diff options
Diffstat (limited to 'src/components/landing/sections/Publications.tsx')
-rw-r--r-- | src/components/landing/sections/Publications.tsx | 275 |
1 files changed, 275 insertions, 0 deletions
diff --git a/src/components/landing/sections/Publications.tsx b/src/components/landing/sections/Publications.tsx new file mode 100644 index 0000000..e343c42 --- /dev/null +++ b/src/components/landing/sections/Publications.tsx | |||
@@ -0,0 +1,275 @@ | |||
1 | /* | ||
2 | * SPDX-FileCopyrightText: 2023-2024 Kristóf Marussy | ||
3 | * | ||
4 | * SPDX-License-Identifier: MIT | ||
5 | */ | ||
6 | |||
7 | import { | ||
8 | ArrowSquareOut, | ||
9 | Certificate, | ||
10 | File, | ||
11 | Lock, | ||
12 | Package, | ||
13 | Play, | ||
14 | } from '@phosphor-icons/react'; | ||
15 | import clsx from 'clsx'; | ||
16 | |||
17 | import { | ||
18 | CreativeCommonsIcon, | ||
19 | DBLPIcon, | ||
20 | GoogleScholarIcon, | ||
21 | MTMTIcon, | ||
22 | OrcidIcon, | ||
23 | ScopusIcon, | ||
24 | } from '@site/src/components/icons'; | ||
25 | import Section from '@site/src/components/landing/Section'; | ||
26 | import Subtitle from '@site/src/components/landing/Subtitle'; | ||
27 | import styles from './Publications.module.css'; | ||
28 | |||
29 | function DOILink({ doi }: { doi: string }) { | ||
30 | return ( | ||
31 | <a | ||
32 | href={`https://doi.org/${doi}`} | ||
33 | className={clsx(styles.link, styles['link--lower'])} | ||
34 | > | ||
35 | <ArrowSquareOut | ||
36 | weight="bold" | ||
37 | aria-hidden="true" | ||
38 | className={styles.link__icon} | ||
39 | /> | ||
40 | DOI | ||
41 | </a> | ||
42 | ); | ||
43 | } | ||
44 | |||
45 | function PDFLink({ filename }: { filename: string }) { | ||
46 | return ( | ||
47 | <a | ||
48 | href={`/papers/${filename}.pdf`} | ||
49 | className={clsx(styles.link, styles['link--lower'])} | ||
50 | > | ||
51 | <File weight="bold" aria-hidden="true" className={styles.link__icon} /> | ||
52 | |||
53 | </a> | ||
54 | ); | ||
55 | } | ||
56 | |||
57 | function ArtifactLink({ doi }: { doi: string }) { | ||
58 | return ( | ||
59 | <a | ||
60 | href={`https://doi.org/${doi}`} | ||
61 | className={clsx(styles.link, styles['link--lower'])} | ||
62 | > | ||
63 | <Package weight="bold" aria-hidden="true" className={styles.link__icon} /> | ||
64 | Artifact | ||
65 | </a> | ||
66 | ); | ||
67 | } | ||
68 | |||
69 | function ArxivLink({ arxivID }: { arxivID: string }) { | ||
70 | return ( | ||
71 | <a href={`https://arxiv.org/abs/${arxivID}`} className={styles.link}> | ||
72 | <ArrowSquareOut | ||
73 | weight="bold" | ||
74 | aria-hidden="true" | ||
75 | className={styles.link__icon} | ||
76 | /> | ||
77 | arXiv | ||
78 | </a> | ||
79 | ); | ||
80 | } | ||
81 | |||
82 | function VideoLink({ url }: { url: string }) { | ||
83 | return ( | ||
84 | <a href={url} className={clsx(styles.link, styles['link--lower'])}> | ||
85 | <Play weight="bold" aria-hidden="true" className={styles.link__icon} /> | ||
86 | Video | ||
87 | </a> | ||
88 | ); | ||
89 | } | ||
90 | |||
91 | function ClosedAccess({ publisher, url }: { publisher: string; url: string }) { | ||
92 | return ( | ||
93 | <a | ||
94 | href={url} | ||
95 | rel="nofollow" | ||
96 | className={clsx(styles.link, styles['link--license'])} | ||
97 | > | ||
98 | <Lock weight="bold" aria-hidden="true" className={styles.link__icon} /> | ||
99 | <span className="sr-only">Closed Access: </span> | ||
100 | {publisher} | ||
101 | </a> | ||
102 | ); | ||
103 | } | ||
104 | |||
105 | function OpenAccess({ license }: { license: string }) { | ||
106 | const url = `https://creativecommons.org/licenses/${license}/4.0/`; | ||
107 | return ( | ||
108 | <a href={url} className={clsx(styles.link, styles['link--license'])}> | ||
109 | <CreativeCommonsIcon className={styles.link__icon} hidden /> | ||
110 | <span className="sr-only">Open Access: </span> | ||
111 | CC-{license.toUpperCase()}-4.0 | ||
112 | </a> | ||
113 | ); | ||
114 | } | ||
115 | |||
116 | function ArtifactLicense({ license, url }: { license: string; url: string }) { | ||
117 | return ( | ||
118 | <a href={url} className={clsx(styles.link, styles['link--license'])}> | ||
119 | <Certificate | ||
120 | weight="bold" | ||
121 | aria-hidden="true" | ||
122 | className={styles.link__icon} | ||
123 | /> | ||
124 | <span className="sr-only">Artifact license: </span> | ||
125 | {license} | ||
126 | </a> | ||
127 | ); | ||
128 | } | ||
129 | |||
130 | export default function Publications() { | ||
131 | return ( | ||
132 | <Section id="publications" title="Publications"> | ||
133 | <div className="container"> | ||
134 | <section> | ||
135 | <Subtitle icon="📌">Selected publications</Subtitle> | ||
136 | <ul> | ||
137 | <li className={styles.publications__item}> | ||
138 | <b>Kristóf Marussy</b>, Attila Ficsor, Oszkár Semeráth, Dániel | ||
139 | Varró (2024). Refinery: Graph Solver as a Service. In | ||
140 | <i> | ||
141 | International Conference on Software Engineering (ICSE) 2024 | ||
142 | </i> | ||
143 | . <PDFLink filename="icse24" />{' '} | ||
144 | <VideoLink url="https://www.youtube.com/watch?v=Qy_3udNsWsM" />{' '} | ||
145 | <OpenAccess license="by" /> | ||
146 | </li> | ||
147 | <li className={styles.publications__item}> | ||
148 | Máté Földiák, <b>Kristóf Marussy</b>, Dániel Varró, István Majzik | ||
149 | (2022). System architecture synthesis for performability by logic | ||
150 | solvers. In | ||
151 | <i> | ||
152 | International Conference on Model Driven Engineering Languages | ||
153 | and Systems (MODELS) 2022, | ||
154 | </i>{' '} | ||
155 | pp. 433–45. <DOILink doi="10.1145/3550355.3552448" />{' '} | ||
156 | <PDFLink filename="models22" />{' '} | ||
157 | <ClosedAccess | ||
158 | publisher="ACM" | ||
159 | url="https://authors.acm.org/journals/rights-permissions" | ||
160 | />{' '} | ||
161 | <ArtifactLink doi="10.5281/zenodo.6974248" />{' '} | ||
162 | <ArtifactLicense | ||
163 | license="EPL-2.0" | ||
164 | url="https://www.eclipse.org/legal/epl-v20.html" | ||
165 | /> | ||
166 | </li> | ||
167 | <li className={styles.publications__item}> | ||
168 | Boqi Chen, <b>Kristóf Marussy</b>, Sebastian Pilarski, Oszkár | ||
169 | Semeráth, Dániel Varró (2022). Consistent Scene Graph Generation | ||
170 | by Constraint Optimization. In | ||
171 | <i> | ||
172 | International Conference on Automated Software Engineering (ASE) | ||
173 | 2022 | ||
174 | </i> | ||
175 | . <DOILink doi="10.1145/3551349.3560433" />{' '} | ||
176 | <PDFLink filename="ase22" /> <OpenAccess license="by" /> | ||
177 | </li> | ||
178 | <li className={styles.publications__item}> | ||
179 | <b>Kristóf Marussy</b>, Oszkár Semeráth, Dániel Varró (2022).{' '} | ||
180 | Automated Generation of Consistent Graph Models With Multiplicity | ||
181 | Reasoning. <i>IEEE Transactions on Software Engineering,</i>{' '} | ||
182 | volume 48, issue 5. <DOILink doi="10.1109/TSE.2020.3025732 " />{' '} | ||
183 | <PDFLink filename="tse22" /> <OpenAccess license="by" /> | ||
184 | </li> | ||
185 | <li className={styles.publications__item}> | ||
186 | Márton Búr, <b>Kristóf Marussy</b>, Brett H. Meyer, Dániel | ||
187 | Varró (2021). Worst-case Execution Time Calculation for | ||
188 | Query-based Monitors by Witness Generation.{' '} | ||
189 | <i>ACM Transactions on Embedded Computing Systems,</i> volume 20, | ||
190 | issue 6. <DOILink doi="10.1145/3239372.3239412" />{' '} | ||
191 | <ArxivLink arxivID="2102.03116" /> <PDFLink filename="tecs21" />{' '} | ||
192 | <OpenAccess license="by" /> | ||
193 | </li> | ||
194 | <li className={styles.publications__item}> | ||
195 | <b>Kristóf Marussy</b>, Oszkár Semeráth, Aren A. Babikian, | ||
196 | Dániel Varró (2020). A Specification Language for Consistent Model | ||
197 | Generation based on Partial Models.{' '} | ||
198 | <i>Journal of Object Technology,</i> volume 19, | ||
199 | pp. 3:1–22. <DOILink doi="10.5381/jot.2020.19.3.a12" />{' '} | ||
200 | <PDFLink filename="jot20" />{' '} | ||
201 | <VideoLink url="https://www.youtube.com/watch?v=ggTbv_s5t2A" />{' '} | ||
202 | <OpenAccess license="by-nd" /> | ||
203 | </li> | ||
204 | <li className={styles.publications__item}> | ||
205 | <b>Kristóf Marussy</b> and Oszkár Semeráth (2018). Incremental | ||
206 | View Model Synchronization Using Partial Models. In | ||
207 | <i> | ||
208 | International Conference on Model Driven Engineering Languages | ||
209 | and Systems (MODELS) 2018, | ||
210 | </i>{' '} | ||
211 | pp. 323–333. <DOILink doi="10.1145/3239372.3239412" />{' '} | ||
212 | <PDFLink filename="models18" />{' '} | ||
213 | <ClosedAccess | ||
214 | publisher="ACM" | ||
215 | url="https://authors.acm.org/journals/rights-permissions" | ||
216 | />{' '} | ||
217 | <ArtifactLink doi="10.5281/zenodo.1318156" />{' '} | ||
218 | <ArtifactLicense | ||
219 | license="EPL-1.0" | ||
220 | url="https://www.eclipse.org/legal/epl-v10.html" | ||
221 | /> | ||
222 | </li> | ||
223 | </ul> | ||
224 | </section> | ||
225 | <div className={styles.elsewhere}> | ||
226 | <p className={styles.elsewhere__text}> | ||
227 | See the full list of my publications at | ||
228 | </p> | ||
229 | <ul className={styles.elsewhere__list}> | ||
230 | <li className={styles.elsewhere__item}> | ||
231 | <a | ||
232 | href="https://orcid.org/0000-0002-9135-8256" | ||
233 | className={styles.elsewhere__icon} | ||
234 | > | ||
235 | <OrcidIcon /> | ||
236 | </a> | ||
237 | </li> | ||
238 | <li className={styles.elsewhere__item}> | ||
239 | <a | ||
240 | href="https://dblp.org/pid/130/6479.html" | ||
241 | className={styles.elsewhere__icon} | ||
242 | > | ||
243 | <DBLPIcon /> | ||
244 | </a> | ||
245 | </li> | ||
246 | <li className={styles.elsewhere__item}> | ||
247 | <a | ||
248 | href="https://scholar.google.com/citations?user=E9CKNYoAAAAJ" | ||
249 | className={styles.elsewhere__icon} | ||
250 | > | ||
251 | <GoogleScholarIcon /> | ||
252 | </a> | ||
253 | </li> | ||
254 | <li className={styles.elsewhere__item}> | ||
255 | <a | ||
256 | href="https://www.scopus.com/authid/detail.uri?authorId=55860043200" | ||
257 | className={styles.elsewhere__icon} | ||
258 | > | ||
259 | <ScopusIcon /> | ||
260 | </a> | ||
261 | </li> | ||
262 | <li className={styles.elsewhere__item}> | ||
263 | <a | ||
264 | href="https://m2.mtmt.hu/gui2/?type=authors&mode=browse&sel=authors10062709" | ||
265 | className={styles.elsewhere__icon} | ||
266 | > | ||
267 | <MTMTIcon /> | ||
268 | </a> | ||
269 | </li> | ||
270 | </ul> | ||
271 | </div> | ||
272 | </div> | ||
273 | </Section> | ||
274 | ); | ||
275 | } | ||