aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2023-11-22 19:55:45 +0100
committerLibravatar Kristóf Marussy <kristof@marussy.com>2024-03-15 19:19:33 +0100
commitdac507c3b8de3c135bfb3c94600b93e8f069b01a (patch)
treefcbc22f5639631719be25bc5f8c3db3e5ebc7c9b /src
parentbump dependencies (diff)
downloadblog-dac507c3b8de3c135bfb3c94600b93e8f069b01a.tar.gz
blog-dac507c3b8de3c135bfb3c94600b93e8f069b01a.tar.zst
blog-dac507c3b8de3c135bfb3c94600b93e8f069b01a.zip
refactor landing page
Diffstat (limited to 'src')
-rw-r--r--src/components/landing/Section.module.css38
-rw-r--r--src/components/landing/Section.tsx24
-rw-r--r--src/components/landing/Subtitle.module.css10
-rw-r--r--src/components/landing/Subtitle.tsx24
-rw-r--r--src/components/landing/sections/Hero.module.css81
-rw-r--r--src/components/landing/sections/Hero.tsx129
-rw-r--r--src/components/landing/sections/Resume.module.css (renamed from src/pages/index.module.css)115
-rw-r--r--src/components/landing/sections/Resume.tsx398
-rw-r--r--src/pages/index.tsx538
9 files changed, 713 insertions, 644 deletions
diff --git a/src/components/landing/Section.module.css b/src/components/landing/Section.module.css
new file mode 100644
index 0000000..3f2bbdc
--- /dev/null
+++ b/src/components/landing/Section.module.css
@@ -0,0 +1,38 @@
1/*
2 * SPDX-FileCopyrightText: 2023 Kristóf Marussy
3 *
4 * SPDX-License-Identifier: MIT
5 */
6
7.section {
8 display: flex;
9 flex-direction: column;
10 padding: 2rem;
11}
12
13@media (max-width: 996px) {
14 .section {
15 padding-left: 0;
16 padding-right: 0;
17 }
18}
19
20.section__title {
21 position: relative;
22 display: block;
23 --ifm-h2-font-size: 2rem;
24 margin: 0 auto 1rem auto;
25 padding-bottom: 0.25rem;
26}
27
28.section__title::after {
29 content: ' ';
30 position: absolute;
31 height: 0.25rem;
32 width: 100%;
33 bottom: 0;
34 left: 0;
35 right: 0;
36 background: var(--ifm-color-primary);
37 transform: skew(-30deg, 0);
38}
diff --git a/src/components/landing/Section.tsx b/src/components/landing/Section.tsx
new file mode 100644
index 0000000..f44272d
--- /dev/null
+++ b/src/components/landing/Section.tsx
@@ -0,0 +1,24 @@
1/*
2 * SPDX-FileCopyrightText: 2023 Kristóf Marussy
3 *
4 * SPDX-License-Identifier: MIT
5 */
6
7import type { ReactNode } from 'react';
8
9import styles from './Section.module.css';
10
11export default function Section({
12 title,
13 children,
14}: {
15 title: string;
16 children?: ReactNode;
17}) {
18 return (
19 <section className={styles.section}>
20 <h2 className={styles.section__title}>{title}</h2>
21 {children}
22 </section>
23 );
24}
diff --git a/src/components/landing/Subtitle.module.css b/src/components/landing/Subtitle.module.css
new file mode 100644
index 0000000..9f5233c
--- /dev/null
+++ b/src/components/landing/Subtitle.module.css
@@ -0,0 +1,10 @@
1/*
2 * SPDX-FileCopyrightText: 2023 Kristóf Marussy
3 *
4 * SPDX-License-Identifier: MIT
5 */
6
7.subtitle {
8 --ifm-h3-font-size: 1.5rem;
9 margin: 1.5rem 0;
10}
diff --git a/src/components/landing/Subtitle.tsx b/src/components/landing/Subtitle.tsx
new file mode 100644
index 0000000..d514f71
--- /dev/null
+++ b/src/components/landing/Subtitle.tsx
@@ -0,0 +1,24 @@
1/*
2 * SPDX-FileCopyrightText: 2023 Kristóf Marussy
3 *
4 * SPDX-License-Identifier: MIT
5 */
6
7import type { ReactNode } from 'react';
8
9import styles from './Subtitle.module.css';
10
11export default function Subtitle({
12 icon,
13 children,
14}: {
15 icon: string;
16 children?: ReactNode;
17}) {
18 return (
19 <h3 className={styles.subtitle}>
20 {icon !== undefined && <>{icon}&nbsp;</>}
21 {children}
22 </h3>
23 );
24}
diff --git a/src/components/landing/sections/Hero.module.css b/src/components/landing/sections/Hero.module.css
new file mode 100644
index 0000000..bc5c151
--- /dev/null
+++ b/src/components/landing/sections/Hero.module.css
@@ -0,0 +1,81 @@
1/*
2 * SPDX-FileCopyrightText: 2023 Kristóf Marussy
3 *
4 * SPDX-License-Identifier: MIT
5 */
6
7.hero {
8 /* Reserve space for the bottom padding of the avatar in single-column mode. */
9 padding-bottom: 2rem;
10 --ifm-link-color: #6ea1f7;
11 --ifm-link-hover-color: var(--ifm-link-color);
12}
13
14.hero__col {
15 display: flex;
16 flex-direction: column;
17 justify-content: center;
18 padding-bottom: 2rem;
19}
20
21.avatar {
22 align-items: center;
23}
24
25.avatar__image {
26 width: 100%;
27 max-width: 298px;
28 border-radius: 100em;
29}
30
31.introduction {
32 font-family: var(--ifm-font-family-base);
33 font-weight: 500;
34 --casl: 0;
35 font-size: 1.5rem;
36}
37
38.introduction__name {
39 font-family: var(--ifm-heading-font-family);
40 font-weight: var(--ifm-heading-font-weight);
41 --casl: 1;
42 font-size: 2.5rem;
43 white-space: pre;
44}
45
46.cta {
47 display: flex;
48 flex-direction: row;
49 flex-wrap: wrap;
50 gap: 1rem;
51}
52
53.cta__button {
54 flex: 1;
55}
56
57.contacts {
58 display: flex;
59 flex-direction: row;
60 flex-grow: 999999;
61 margin: 0 0 0 -0.5rem;
62 padding: 0;
63}
64
65.contacts__item {
66 display: flex;
67 align-items: center;
68}
69
70.contacts__icon {
71 padding: 0.375rem 0.5rem;
72 display: flex;
73 --ifm-link-color: var(--ifm-color-secondary);
74 --ifm-link-hover-color: var(--ifm-color-secondary-dark);
75 --ifm-link-text-decoration: none;
76}
77
78.contacts__icon svg {
79 width: 2rem;
80 height: 2rem;
81}
diff --git a/src/components/landing/sections/Hero.tsx b/src/components/landing/sections/Hero.tsx
new file mode 100644
index 0000000..a56deb1
--- /dev/null
+++ b/src/components/landing/sections/Hero.tsx
@@ -0,0 +1,129 @@
1/*
2 * SPDX-FileCopyrightText: 2023 Kristóf Marussy
3 *
4 * SPDX-License-Identifier: MIT
5 */
6
7import clsx from 'clsx';
8
9import {
10 FediverseIcon,
11 GithubIcon,
12 GoogleScholarIcon,
13 LinkedInIcon,
14 OrcidIcon,
15} from '@site/src/components/icons';
16
17import styles from './Hero.module.css';
18
19export default function Hero({ avatar }: { avatar: string }) {
20 return (
21 <header className={clsx('hero', 'hero--dark', styles.hero)}>
22 <div className="container">
23 <div className="row">
24 <div
25 className={clsx('col', 'col--3', styles.hero__col, styles.avatar)}
26 >
27 <img src={avatar} alt="My photo" className={styles.avatar__image} />
28 </div>
29 <div className={clsx('col', 'col--9', styles.hero__col)}>
30 <h1 className={clsx('hero__title', styles.introduction)}>
31 Hi! 👋 I&rsquo;m{' '}
32 <span className={styles.introduction__name}>Kristóf Marussy</span>
33 </h1>
34 <p>
35 I&rsquo;m a research fellow working at the{' '}
36 <a href="https://ftsrg.mit.bme.hu">
37 🔬&nbsp;Critical Systems Research Group&nbsp;(
38 <abbr>ftsrg</abbr>)
39 </a>{' '}
40 at the{' '}
41 <a href="https://mit.bme.hu">
42 🏫&nbsp;Department of Measurement and Information
43 Systems&nbsp;(MIT)
44 </a>{' '}
45 at{' '}
46 <a href="https://bme.hu">
47 🏛️&nbsp;Budapest University of Technology and
48 Economics&nbsp;(BME)
49 </a>
50 . My reasearch interests include graph generation, logic solvers,
51 formal verification, and applying these techniques for ensuring
52 the safety and correcness of critical systems.
53 </p>
54 <p>
55 I also like free (as in liberty) and open source software. My
56 pronouns are he/him.
57 </p>
58 <div className={styles.cta}>
59 <a
60 href="/cv.pdf"
61 className={clsx(
62 'button',
63 'button--lg',
64 'button--primary',
65 styles.cta__button,
66 )}
67 >
68 Read my CV
69 </a>
70 <a
71 href="#contact"
72 className={clsx(
73 'button',
74 'button--lg',
75 'button--secondary',
76 styles.cta__button,
77 )}
78 >
79 Contact me
80 </a>
81 <ul className={styles.contacts}>
82 <li className={styles.contacts__item}>
83 <a
84 href="https://orcid.org/0000-0002-9135-8256"
85 className={styles.contacts__icon}
86 >
87 <OrcidIcon />
88 </a>
89 </li>
90 <li className={styles.contacts__item}>
91 <a
92 href="https://scholar.google.com/citations?user=E9CKNYoAAAAJ"
93 className={styles.contacts__icon}
94 >
95 <GoogleScholarIcon />
96 </a>
97 </li>
98 <li className={styles.contacts__item}>
99 <a
100 href="https://github.com/kris7t/"
101 className={styles.contacts__icon}
102 >
103 <GithubIcon />
104 </a>
105 </li>
106 <li className={styles.contacts__item}>
107 <a
108 href="https://pleroma.marussy.com/users/kristof"
109 className={styles.contacts__icon}
110 >
111 <FediverseIcon />
112 </a>
113 </li>
114 <li className={styles.contacts__item}>
115 <a
116 href="https://www.linkedin.com/in/k-marussy"
117 className={styles.contacts__icon}
118 >
119 <LinkedInIcon />
120 </a>
121 </li>
122 </ul>
123 </div>
124 </div>
125 </div>
126 </div>
127 </header>
128 );
129}
diff --git a/src/pages/index.module.css b/src/components/landing/sections/Resume.module.css
index 2eb2c5f..246ebec 100644
--- a/src/pages/index.module.css
+++ b/src/components/landing/sections/Resume.module.css
@@ -4,120 +4,6 @@
4 * SPDX-License-Identifier: MIT 4 * SPDX-License-Identifier: MIT
5 */ 5 */
6 6
7.hero {
8 /* Reserve space for the bottom padding of the avatar in single-column mode. */
9 padding-bottom: 2rem;
10 --ifm-link-color: #6ea1f7;
11 --ifm-link-hover-color: var(--ifm-link-color);
12}
13
14.hero__col {
15 display: flex;
16 flex-direction: column;
17 justify-content: center;
18 padding-bottom: 2rem;
19}
20
21.avatar {
22 align-items: center;
23}
24
25.avatar__image {
26 width: 100%;
27 max-width: 298px;
28 border-radius: 100em;
29}
30
31.introduction {
32 font-family: var(--ifm-font-family-base);
33 font-weight: 500;
34 --casl: 0;
35 font-size: 1.5rem;
36}
37
38.introduction__name {
39 font-family: var(--ifm-heading-font-family);
40 font-weight: var(--ifm-heading-font-weight);
41 --casl: 1;
42 font-size: 2.5rem;
43 white-space: pre;
44}
45
46.cta {
47 display: flex;
48 flex-direction: row;
49 flex-wrap: wrap;
50 gap: 1rem;
51}
52
53.cta__button {
54 flex: 1;
55}
56
57.contacts {
58 display: flex;
59 flex-direction: row;
60 flex-grow: 999999;
61 margin: 0 0 0 -0.5rem;
62 padding: 0;
63}
64
65.contacts__item {
66 display: flex;
67 align-items: center;
68}
69
70.contacts__icon {
71 padding: 0.375rem 0.5rem;
72 display: flex;
73 --ifm-link-color: var(--ifm-color-secondary);
74 --ifm-link-hover-color: var(--ifm-color-secondary-dark);
75 --ifm-link-text-decoration: none;
76}
77
78.contacts__icon svg {
79 width: 2rem;
80 height: 2rem;
81}
82
83.section {
84 display: flex;
85 flex-direction: column;
86 padding: 2rem;
87}
88
89@media (max-width: 996px) {
90 .section {
91 padding-left: 0;
92 padding-right: 0;
93 }
94}
95
96.section__title {
97 position: relative;
98 display: block;
99 --ifm-h2-font-size: 2rem;
100 margin: 0 auto 1rem auto;
101 padding-bottom: 0.25rem;
102}
103
104.section__title::after {
105 content: ' ';
106 position: absolute;
107 height: 0.25rem;
108 width: 100%;
109 bottom: 0;
110 left: 0;
111 right: 0;
112 background: var(--ifm-color-primary);
113 transform: skew(-30deg, 0);
114}
115
116.section__subtitle {
117 --ifm-h3-font-size: 1.5rem;
118 margin: 1.5rem 0;
119}
120
121.cv { 7.cv {
122 position: relative; 8 position: relative;
123} 9}
@@ -166,7 +52,6 @@
166 display: flex; 52 display: flex;
167 flex-wrap: wrap; 53 flex-wrap: wrap;
168 align-items: baseline; 54 align-items: baseline;
169 padding-left: 0.25rem;
170 gap: 0.5rem; 55 gap: 0.5rem;
171} 56}
172 57
diff --git a/src/components/landing/sections/Resume.tsx b/src/components/landing/sections/Resume.tsx
new file mode 100644
index 0000000..40ceeb0
--- /dev/null
+++ b/src/components/landing/sections/Resume.tsx
@@ -0,0 +1,398 @@
1/*
2 * SPDX-FileCopyrightText: 2023 Kristóf Marussy
3 *
4 * SPDX-License-Identifier: MIT AND CC-BY-4.0
5 */
6
7import clsx from 'clsx';
8
9import Section from '@site/src/components/landing/Section';
10import Subtitle from '@site/src/components/landing/Subtitle';
11
12import styles from './Resume.module.css';
13
14export default function Resume() {
15 return (
16 <Section title="Resume">
17 <div className="container">
18 <div className="row">
19 <div className="col col-6">
20 <Subtitle icon="🎓">Education</Subtitle>
21 <ul className={styles.cv}>
22 <li className={styles.cv__item}>
23 <h4 className={styles.cv__title}>Doctor of Philosophy (PhD)</h4>
24 <p className={styles.cv__times}>
25 <span className={styles.cv__time}>2018&ndash;2023</span>
26 </p>
27 <p>
28 <i>Budapest Unversity of Technology and Economics</i>
29 </p>
30 <p>
31 Thesis:{' '}
32 <a href="/thesis.pdf">
33 <b>
34 Abstraction Techniques for the Analysis and Synthesis of
35 Critical Cyber-Physical System Architectures
36 </b>
37 </a>
38 </p>
39 <div className={styles['thesis-links']}>
40 <a
41 href="/thesis.pdf"
42 className={clsx(
43 'button',
44 'button--primary',
45 styles['thesis-links__link'],
46 )}
47 >
48 Read now
49 </a>
50 <a
51 href="/thesis-booklet-en.pdf"
52 className={clsx(
53 'button',
54 'button--secondary',
55 styles['thesis-links__link'],
56 )}
57 >
58 Extended abstract
59 </a>
60 <a
61 href="http://hdl.handle.net/10890/41832"
62 className={styles['thesis-links__link']}
63 >
64 Also available via HDL.NET
65 </a>
66 </div>
67 </li>
68 <li className={styles.cv__item}>
69 <h4 className={styles.cv__title}>Master of Science (MSc)</h4>
70 <p className={styles.cv__times}>
71 <span className={styles.cv__time}>2016&ndash;2018</span>
72 </p>
73 <p>
74 <i>Budapest Unversity of Technology and Economics</i>
75 </p>
76 </li>
77 <li className={styles.cv__item}>
78 <h4 className={styles.cv__title}>Bachleor of Science (BSc)</h4>
79 <p className={styles.cv__times}>
80 <span className={styles.cv__time}>2012&ndash;2016</span>
81 </p>
82 <p>
83 <i>Budapest Unversity of Technology and Economics</i>
84 </p>
85 </li>
86 </ul>
87 <Subtitle icon="🏅">Scholarships and awards</Subtitle>
88 <ul className={styles.cv}>
89 <li className={styles.cv__item}>
90 <h4 className={styles.cv__title}>
91 <a href="https://www.unkp.gov.hu/">
92 New National Excellence Programme (
93 <span lang="hu">ÚNKP</span>)
94 </a>
95 </h4>
96 <p className={styles.cv__times}>
97 <span className={styles.cv__time}>2016 (MSc)</span>{' '}
98 <span className={styles.cv__time}>2018 (PhD student)</span>{' '}
99 <span className={styles.cv__time}>2021 (PhD candidate)</span>{' '}
100 <span className={styles.cv__time}>2023 (postdoc)</span>{' '}
101 </p>
102 <p className={styles.cv__awarddesc}>
103 Awarded by the{' '}
104 <a href="https://web.archive.org/web/20230531162207/https://nkfih.gov.hu/english/nrdi-fund/new-national-excellence-programme-unkp-23-3/call-for-applications">
105 National Research, Development and Innovation Office (NRDI)
106 </a>{' '}
107 of Hungary to around 700 recipents per year
108 </p>
109 </li>
110 <li className={styles.cv__item}>
111 <h4 className={styles.cv__title}>
112 <a href="https://2021.splashcon.org/track/splash-2021-Artifacts#Chairs-Report">
113 OOPSLA 2021 Distinguished Artifact Reviewer
114 </a>
115 </h4>
116 </li>
117 <li className={styles.cv__item}>
118 <h4 className={styles.cv__title}>
119 <a href="https://www.mit.bme.hu/node/10575">
120 2020 László Schnell Award
121 </a>
122 </h4>
123 <p className={styles.cv__awarddesc}>
124 Awarded by the{' '}
125 <a href="https://www.mit.bme.hu/general/alapitvany">
126 László Schell Foundation
127 </a>{' '}
128 to 1 member of the{' '}
129 <i>Department of Measurement and Information Systems</i> per
130 year for exceptional research work
131 </p>
132 </li>
133 </ul>
134 <Subtitle icon="👨‍🏫">Teaching and mentoring</Subtitle>
135 <ul className={styles.cv}>
136 <li className={styles.cv__item}>
137 <h4 className={styles.cv__title}>Teaching assistant</h4>
138 <p className={styles.cv__times}>
139 <span className={styles.cv__time}>2014&ndash;</span>
140 </p>
141 <ul className={styles.cv__activities}>
142 <li className={styles.cv__activity}>
143 Courses at the{' '}
144 <a href="https://mit.bme.hu">
145 Deparment of Measurement and Information Systems
146 </a>{' '}
147 and the{' '}
148 <a href="https://cs.bme.hu">
149 Deparment of Computer Science and Information Theory
150 </a>
151 </li>
152 <li className={styles.cv__activity}>
153 Including practice and lab sessions in the{' '}
154 <a href="https://imsc.vik.bme.hu/">IMsc programme</a> of BME
155 for talented BSc students
156 </li>
157 </ul>
158 </li>
159 <li className={styles.cv__item}>
160 <h4 className={styles.cv__title}>
161 Supervised BSc and MSc{' '}
162 <a href="https://diplomaterv.vik.bme.hu/hu/Supervisors/Marussy-Kristof">
163 thesis works
164 </a>
165 </h4>
166 <p className={styles.cv__times}>
167 <span className={styles.cv__time}>7 &times; BSc</span>{' '}
168 <span className={styles.cv__time}>4 &times; MSc</span>{' '}
169 <span className={styles.cv__time}>
170 1 &times; MSc{' '}
171 <a href="https://www.unkp.gov.hu/" lang="hu">
172 ÚNKP research
173 </a>
174 </span>
175 </p>
176 </li>
177 <li className={styles.cv__item}>
178 <h4 className={styles.cv__title}>
179 Supervised{' '}
180 <a href="https://tdk.bme.hu/Browse/Users/Marussy-Kristof">
181 Scientific Students' Association
182 </a>{' '}
183 research
184 </h4>
185 <p className={styles.cv__times}>
186 <span className={styles.cv__time}>5 &times; 🥇</span>{' '}
187 <span className={styles.cv__time}>4 &times; 🥈</span>{' '}
188 <span className={styles.cv__time}>1 &times; 🥉</span>{' '}
189 <span className={styles.cv__time}>1 &times; merit</span>
190 at university level
191 </p>
192 <p className={styles.cv__times}>
193 <span className={styles.cv__time}>1 &times; 🥈</span>{' '}
194 <span className={styles.cv__time}>1 &times; merit</span>
195 at national level
196 </p>
197 </li>
198 </ul>
199 </div>
200 <div className="col col-6">
201 <Subtitle icon="👨‍💼">Professional experience</Subtitle>
202 <ul className={styles.cv}>
203 <li className={styles.cv__item}>
204 <h4 className={styles.cv__title}>Assistant research fellow</h4>
205 <p className={styles.cv__times}>
206 <span className={styles.cv__time}>2020&ndash;2023</span>
207 </p>
208 <p>
209 <i>
210 Department of Measurement and Information Systems, Budapest
211 Unversity of Technology and Economics, Hungary
212 </i>
213 </p>
214 <ul className={styles.cv__activities}>
215 <li className={styles.cv__activity}>
216 Performing research and developing tools to address
217 challanges in the development of critical systems motivated
218 by case studies and collaborations with industry partners
219 </li>
220 <li className={styles.cv__activity}>
221 Created reliability models for{' '}
222 <i>distributed railway interlocking systems</i> in a{' '}
223 <a href="https://projektek.bme.hu/index.php?site=3_0_0&i=28">
224 Hungarian national project
225 </a>{' '}
226 with <a href="https://www.prolan.hu/">Prolan Zrt.</a>
227 </li>
228 <li className={styles.cv__activity}>
229 Participated in the formal verification of a{' '}
230 <i>critical automotive subsystem</i> in a{' '}
231 <a href="https://projektek.bme.hu/index.php?site=3_1_0&i=18">
232 Hungarian national project
233 </a>{' '}
234 with{' '}
235 <a href="https://www.thyssenkrupp.hu/en">
236 thyssenkrupp Ltd.
237 </a>
238 </li>
239 </ul>
240 </li>
241 <li className={styles.cv__item}>
242 <h4 className={styles.cv__title}>Assistant research fellow</h4>
243 <p className={styles.cv__times}>
244 <span className={styles.cv__time}>2018&ndash;2019</span>
245 </p>
246 <p>
247 <i>
248 <a href="https://web.archive.org/web/20200919160859/https://lendulet.inf.mit.bme.hu/">
249 MTA-BME <span lang="hu">Lendület</span> Cyber-Physical
250 Systems Research Group
251 </a>
252 </i>
253 </p>
254 </li>
255 <li className={styles.cv__item}>
256 <h4 className={styles.cv__title}>Research trainee</h4>
257 <p className={styles.cv__times}>
258 <span className={styles.cv__time}>2014-2015</span>
259 </p>
260 <p>
261 <i>
262 <a href="https://web.archive.org/web/20150925191035/http://biointelligence.hu/">
263 BioIntelligence Research Group,
264 </a>{' '}
265 <a href="https://semmelweis.hu/genomikai-medicina/en/">
266 Institute of Genomic Medicine and Rare Disorders,
267 </a>{' '}
268 <a href="https://semmelweis.hu/en/">
269 Semmelweis University,
270 </a>{' '}
271 Budapest, Hungary
272 </i>
273 </p>
274 </li>
275 </ul>
276 <Subtitle icon="🏕️">Research visits</Subtitle>
277 <ul className={styles.cv}>
278 <li className={styles.cv__item}>
279 <h4 className={styles.cv__title}>Graduate research trainee</h4>
280 <p className={styles.cv__times}>
281 <span className={styles.cv__time}>May&ndash;June 2019</span>{' '}
282 <span className={styles.cv__time}>October 2020</span>
283 </p>
284 <p>
285 <i>
286 <a href="https://web.archive.org/web/20201124184148/https://www.mcgill.ca/ece/daniel-varro">
287 Department of Electrical and Computer Engineering,
288 </a>{' '}
289 <a href="https://www.mcgill.ca/">McGill Univeristy,</a>{' '}
290 </i>
291 Montreal, Canada
292 </p>
293 </li>
294 <li className={styles.cv__item}>
295 <h4 className={styles.cv__title}>Visting researcher</h4>
296 <p className={styles.cv__times}>
297 <span className={styles.cv__time}>March 2019</span>{' '}
298 </p>
299 <p>
300 <i>
301 <a href="https://web.archive.org/web/20190430204608/https://people.disim.univaq.it/cortelle/">
302 Department of Computer Science and Engineering, and
303 Mathematics,
304 </a>{' '}
305 <a href="https://www.univaq.it/en/index.php?&lang_s=en">
306 University of L'Aquila,
307 </a>{' '}
308 </i>
309 Italy
310 </p>
311 </li>
312 </ul>
313 <Subtitle icon="📔">Academic service</Subtitle>
314 <ul className={styles.cv}>
315 <li className={styles.cv__item}>
316 <h4 className={styles.cv__title}>
317 Extended Review Committe member
318 </h4>
319 <p className={styles.cv__times}>
320 <span className={styles.cv__time}>
321 <a href="https://2023.splashcon.org/committee/splash-2023-oopsla-external-review---artifact-evaluation-committee">
322 OOPSLA &rsquo;23
323 </a>
324 </span>{' '}
325 <span className={styles.cv__time}>
326 <a href="https://2023.ecoop.org/committee/ecoop-2023-research-papers-extended-review-committee">
327 ECOOP &rsquo;23
328 </a>{' '}
329 and{' '}
330 <a href="https://2022.ecoop.org/committee/ecoop-2022-papers-extended-review-committee-">
331 &rsquo;22
332 </a>
333 </span>
334 </p>
335 </li>
336 <li className={styles.cv__item}>
337 <h4 className={styles.cv__title}>
338 Artifact Evaluation Committe member
339 </h4>
340 <p className={styles.cv__times}>
341 <span className={styles.cv__time}>
342 <a href="https://2023.splashcon.org/committee/splash-2023-oopsla-external-review---artifact-evaluation-committee">
343 OOPSLA &rsquo;23
344 </a>{' '}
345 and{' '}
346 <a href="https://2021.splashcon.org/track/splash-2021-Artifacts">
347 &rsquo;21
348 </a>
349 </span>{' '}
350 <span className={styles.cv__time}>
351 <a href="https://2023.ecoop.org/committee/ecoop-2023-artifact-evaluation-artifact-evaluation-committee">
352 ECOOP &rsquo;23
353 </a>{' '}
354 and{' '}
355 <a href="https://2022.ecoop.org/committee/ecoop-2022-artifacts-artifact-evaluation-committee">
356 &rsquo;22
357 </a>
358 </span>{' '}
359 <span className={styles.cv__time}>
360 <a href="https://web.archive.org/web/20230209015023/https://fase-conf.github.io/">
361 FASE &rsquo;23
362 </a>
363 </span>{' '}
364 <span className={styles.cv__time}>
365 <a href="https://www.etaps.org/user-profile/archive/53-etaps-2022/491-esop-2022-artifact-evaluation.html">
366 ESOP &rsquo;22
367 </a>
368 </span>{' '}
369 </p>
370 </li>
371 <li className={styles.cv__item}>
372 <h4 className={styles.cv__title}>Reviewing for journals</h4>
373 <ul className={styles.cv__activities}>
374 <li
375 className={clsx(
376 styles.cv__activity,
377 styles['cv__activity--tight'],
378 )}
379 >
380 Science of Computer Programming
381 </li>
382 <li
383 className={clsx(
384 styles.cv__activity,
385 styles['cv__activity--tight'],
386 )}
387 >
388 Journal of Logical and Algebraic Methods in Programming
389 </li>
390 </ul>
391 </li>
392 </ul>
393 </div>
394 </div>
395 </div>
396 </Section>
397 );
398}
diff --git a/src/pages/index.tsx b/src/pages/index.tsx
index 5f1f5bb..b8e986d 100644
--- a/src/pages/index.tsx
+++ b/src/pages/index.tsx
@@ -4,543 +4,23 @@
4 * SPDX-License-Identifier: MIT 4 * SPDX-License-Identifier: MIT
5 */ 5 */
6 6
7import clsx from 'clsx';
8
9import Layout from '@theme/Layout'; 7import Layout from '@theme/Layout';
10 8
11import { 9import Hero from '@site/src/components/landing/sections/Hero';
12 FediverseIcon, 10import Resume from '@site/src/components/landing/sections/Resume';
13 GithubIcon, 11import Section from '@site/src/components/landing/Section';
14 GoogleScholarIcon,
15 LinkedInIcon,
16 OrcidIcon,
17} from '@site/src/components/icons';
18 12
19import avatar from './avatar.jpg'; 13import avatar from './avatar.jpg';
20import styles from './index.module.css';
21 14
22export default function Home() { 15export default function Home() {
23 return ( 16 return (
24 <Layout> 17 <Layout>
25 <header className={clsx('hero', 'hero--dark', styles.hero)}> 18 <Hero avatar={avatar} />
26 <div className="container"> 19 <Section title="Research" />
27 <div className="row"> 20 <Section title="Publications" />
28 <div 21 <Section title="Software" />
29 className={clsx('col', 'col--3', styles.hero__col, styles.avatar)} 22 <Resume />
30 > 23 <Section title="Contact" />
31 <img
32 src={avatar}
33 alt="My photo"
34 className={styles.avatar__image}
35 />
36 </div>
37 <div className={clsx('col', 'col--9', styles.hero__col)}>
38 <h1 className={clsx('hero__title', styles.introduction)}>
39 Hi! 👋 I&rsquo;m{' '}
40 <span className={styles.introduction__name}>
41 Kristóf Marussy
42 </span>
43 </h1>
44 <p>
45 I&rsquo;m a research fellow working at the{' '}
46 <a href="https://ftsrg.mit.bme.hu">
47 🔬&nbsp;Critical Systems Research Group&nbsp;(
48 <abbr>ftsrg</abbr>)
49 </a>{' '}
50 at the{' '}
51 <a href="https://mit.bme.hu">
52 🏫&nbsp;Department of Measurement and Information
53 Systems&nbsp;(MIT)
54 </a>{' '}
55 at{' '}
56 <a href="https://bme.hu">
57 🏛️&nbsp;Budapest University of Technology and
58 Economics&nbsp;(BME)
59 </a>
60 . My reasearch interests include graph generation, logic
61 solvers, formal verification, and applying these techniques for
62 ensuring the safety and correcness of critical systems.
63 </p>
64 <p>
65 I also like free (as in liberty) and open source software. My
66 pronouns are he/him.
67 </p>
68 <div className={styles.cta}>
69 <a
70 href="/cv.pdf"
71 className={clsx(
72 'button',
73 'button--lg',
74 'button--primary',
75 styles.cta__button,
76 )}
77 >
78 Read my CV
79 </a>
80 <a
81 href="#contact"
82 className={clsx(
83 'button',
84 'button--lg',
85 'button--secondary',
86 styles.cta__button,
87 )}
88 >
89 Contact me
90 </a>
91 <ul className={styles.contacts}>
92 <li className={styles.contacts__item}>
93 <a
94 href="https://orcid.org/0000-0002-9135-8256"
95 className={styles.contacts__icon}
96 >
97 <OrcidIcon />
98 </a>
99 </li>
100 <li className={styles.contacts__item}>
101 <a
102 href="https://scholar.google.com/citations?user=E9CKNYoAAAAJ"
103 className={styles.contacts__icon}
104 >
105 <GoogleScholarIcon />
106 </a>
107 </li>
108 <li className={styles.contacts__item}>
109 <a
110 href="https://github.com/kris7t/"
111 className={styles.contacts__icon}
112 >
113 <GithubIcon />
114 </a>
115 </li>
116 <li className={styles.contacts__item}>
117 <a
118 href="https://pleroma.marussy.com/users/kristof"
119 className={styles.contacts__icon}
120 >
121 <FediverseIcon />
122 </a>
123 </li>
124 <li className={styles.contacts__item}>
125 <a
126 href="https://www.linkedin.com/in/k-marussy"
127 className={styles.contacts__icon}
128 >
129 <LinkedInIcon />
130 </a>
131 </li>
132 </ul>
133 </div>
134 </div>
135 </div>
136 </div>
137 </header>
138 <section className={styles.section}>
139 <h2 className={styles.section__title}>Resume</h2>
140 <div className="container">
141 <div className="row">
142 <div className="col col-6">
143 <h3 className={styles.section__subtitle}>🎓&nbsp;Education</h3>
144 <ul className={styles.cv}>
145 <li className={styles.cv__item}>
146 <h4 className={styles.cv__title}>
147 Doctor of Philosophy (PhD)
148 </h4>
149 <p className={styles.cv__times}>
150 <span className={styles.cv__time}>2018&ndash;2023</span>
151 </p>
152 <p>
153 <i>Budapest Unversity of Technology and Economics</i>
154 </p>
155 <p>
156 Thesis:{' '}
157 <a href="/thesis.pdf">
158 <b>
159 Abstraction Techniques for the Analysis and Synthesis of
160 Critical Cyber-Physical System Architectures
161 </b>
162 </a>
163 </p>
164 <div className={styles['thesis-links']}>
165 <a
166 href="/thesis.pdf"
167 className={clsx(
168 'button',
169 'button--primary',
170 styles['thesis-links__link'],
171 )}
172 >
173 Read now
174 </a>
175 <a
176 href="/thesis-booklet-en.pdf"
177 className={clsx(
178 'button',
179 'button--secondary',
180 styles['thesis-links__link'],
181 )}
182 >
183 Extended abstract
184 </a>
185 <a
186 href="http://hdl.handle.net/10890/41832"
187 className={styles['thesis-links__link']}
188 >
189 Also available via HDL.NET
190 </a>
191 </div>
192 </li>
193 <li className={styles.cv__item}>
194 <h4 className={styles.cv__title}>Master of Science (MSc)</h4>
195 <p className={styles.cv__times}>
196 <span className={styles.cv__time}>2016&ndash;2018</span>
197 </p>
198 <p>
199 <i>Budapest Unversity of Technology and Economics</i>
200 </p>
201 </li>
202 <li className={styles.cv__item}>
203 <h4 className={styles.cv__title}>
204 Bachleor of Science (BSc)
205 </h4>
206 <p className={styles.cv__times}>
207 <span className={styles.cv__time}>2012&ndash;2016</span>
208 </p>
209 <p>
210 <i>Budapest Unversity of Technology and Economics</i>
211 </p>
212 </li>
213 </ul>
214 <h3 className={styles.section__subtitle}>
215 🏅&nbsp;Scholarships and awards
216 </h3>
217 <ul className={styles.cv}>
218 <li className={styles.cv__item}>
219 <h4 className={styles.cv__title}>
220 <a href="https://www.unkp.gov.hu/">
221 New National Excellence Programme (
222 <span lang="hu">ÚNKP</span>)
223 </a>
224 </h4>
225 <p className={styles.cv__times}>
226 <span className={styles.cv__time}>2016 (MSc)</span>{' '}
227 <span className={styles.cv__time}>2018 (PhD student)</span>{' '}
228 <span className={styles.cv__time}>
229 2021 (PhD candidate)
230 </span>{' '}
231 <span className={styles.cv__time}>2023 (postdoc)</span>{' '}
232 </p>
233 <p className={styles.cv__awarddesc}>
234 Awarded by the{' '}
235 <a href="https://web.archive.org/web/20230531162207/https://nkfih.gov.hu/english/nrdi-fund/new-national-excellence-programme-unkp-23-3/call-for-applications">
236 National Research, Development and Innovation Office
237 (NRDI)
238 </a>{' '}
239 of Hungary to around 700 recipents per year
240 </p>
241 </li>
242 <li className={styles.cv__item}>
243 <h4 className={styles.cv__title}>
244 <a href="https://2021.splashcon.org/track/splash-2021-Artifacts#Chairs-Report">
245 OOPSLA 2021 Distinguished Artifact Reviewer
246 </a>
247 </h4>
248 </li>
249 <li className={styles.cv__item}>
250 <h4 className={styles.cv__title}>
251 <a href="https://www.mit.bme.hu/node/10575">
252 2020 László Schnell Award
253 </a>
254 </h4>
255 <p className={styles.cv__awarddesc}>
256 Awarded by the{' '}
257 <a href="https://www.mit.bme.hu/general/alapitvany">
258 László Schell Foundation
259 </a>{' '}
260 to 1 member of the{' '}
261 <i>Department of Measurement and Information Systems</i> per
262 year for exceptional research work
263 </p>
264 </li>
265 </ul>
266 <h3 className={styles.section__subtitle}>
267 👨‍🏫&nbsp;Teaching and mentoring
268 </h3>
269 <ul className={styles.cv}>
270 <li className={styles.cv__item}>
271 <h4 className={styles.cv__title}>Teaching assistant</h4>
272 <p className={styles.cv__times}>
273 <span className={styles.cv__time}>2014&ndash;</span>
274 </p>
275 <ul className={styles.cv__activities}>
276 <li className={styles.cv__activity}>
277 Courses at the{' '}
278 <a href="https://mit.bme.hu">
279 Deparment of Measurement and Information Systems
280 </a>{' '}
281 and the{' '}
282 <a href="https://cs.bme.hu">
283 Deparment of Computer Science and Information Theory
284 </a>
285 </li>
286 <li className={styles.cv__activity}>
287 Including practice and lab sessions in the{' '}
288 <a href="https://imsc.vik.bme.hu/">IMsc programme</a> of
289 BME for talented BSc students
290 </li>
291 </ul>
292 </li>
293 <li className={styles.cv__item}>
294 <h4 className={styles.cv__title}>
295 Supervised BSc and MSc{' '}
296 <a href="https://diplomaterv.vik.bme.hu/hu/Supervisors/Marussy-Kristof">
297 thesis works
298 </a>
299 </h4>
300 <p className={styles.cv__times}>
301 <span className={styles.cv__time}>7 &times; BSc</span>{' '}
302 <span className={styles.cv__time}>4 &times; MSc</span>{' '}
303 <span className={styles.cv__time}>
304 1 &times; MSc{' '}
305 <a href="https://www.unkp.gov.hu/" lang="hu">
306 ÚNKP research
307 </a>
308 </span>
309 </p>
310 </li>
311 <li className={styles.cv__item}>
312 <h4 className={styles.cv__title}>
313 Supervised{' '}
314 <a href="https://tdk.bme.hu/Browse/Users/Marussy-Kristof">
315 Scientific Students' Association
316 </a>{' '}
317 research
318 </h4>
319 <p className={styles.cv__times}>
320 <span className={styles.cv__time}>4 &times; 🥇</span>{' '}
321 <span className={styles.cv__time}>1 &times; 🥈</span>{' '}
322 <span className={styles.cv__time}>1 &times; 🥉</span>{' '}
323 <span className={styles.cv__time}>1 &times; merit</span>
324 at university level
325 </p>
326 <p className={styles.cv__times}>
327 <span className={styles.cv__time}>1 &times; 🥈</span>{' '}
328 <span className={styles.cv__time}>1 &times; merit</span>
329 at national level
330 </p>
331 </li>
332 </ul>
333 </div>
334 <div className="col col-6">
335 <h3 className={styles.section__subtitle}>
336 👨‍💼&nbsp;Professional experience
337 </h3>
338 <ul className={styles.cv}>
339 <li className={styles.cv__item}>
340 <h4 className={styles.cv__title}>
341 Assistant research fellow
342 </h4>
343 <p className={styles.cv__times}>
344 <span className={styles.cv__time}>2020&ndash;2023</span>
345 </p>
346 <p>
347 <i>
348 Department of Measurement and Information Systems,
349 Budapest Unversity of Technology and Economics, Hungary
350 </i>
351 </p>
352 <ul className={styles.cv__activities}>
353 <li className={styles.cv__activity}>
354 Performing research and developing tools to address
355 challanges in the development of critical systems
356 motivated by case studies and collaborations with industry
357 partners
358 </li>
359 <li className={styles.cv__activity}>
360 Created reliability models for{' '}
361 <i>distributed railway interlocking systems</i> in a{' '}
362 <a href="https://projektek.bme.hu/index.php?site=3_0_0&i=28">
363 Hungarian national project
364 </a>{' '}
365 with <a href="https://www.prolan.hu/">Prolan Zrt.</a>
366 </li>
367 <li className={styles.cv__activity}>
368 Participated in the formal verification of a{' '}
369 <i>critical automotive subsystem</i> in a{' '}
370 <a href="https://projektek.bme.hu/index.php?site=3_1_0&i=18">
371 Hungarian national project
372 </a>{' '}
373 with{' '}
374 <a href="https://www.thyssenkrupp.hu/en">
375 thyssenkrupp Ltd.
376 </a>
377 </li>
378 </ul>
379 </li>
380 <li className={styles.cv__item}>
381 <h4 className={styles.cv__title}>
382 Assistant research fellow
383 </h4>
384 <p className={styles.cv__times}>
385 <span className={styles.cv__time}>2018&ndash;2019</span>
386 </p>
387 <p>
388 <i>
389 <a href="https://web.archive.org/web/20200919160859/https://lendulet.inf.mit.bme.hu/">
390 MTA-BME <span lang="hu">Lendület</span> Cyber-Physical
391 Systems Research Group
392 </a>
393 </i>
394 </p>
395 </li>
396 <li className={styles.cv__item}>
397 <h4 className={styles.cv__title}>Research trainee</h4>
398 <p className={styles.cv__times}>
399 <span className={styles.cv__time}>2014-2015</span>
400 </p>
401 <p>
402 <i>
403 <a href="https://web.archive.org/web/20150925191035/http://biointelligence.hu/">
404 BioIntelligence Research Group,
405 </a>{' '}
406 <a href="https://semmelweis.hu/genomikai-medicina/en/">
407 Institute of Genomic Medicine and Rare Disorders,
408 </a>{' '}
409 <a href="https://semmelweis.hu/en/">
410 Semmelweis University,
411 </a>{' '}
412 Budapest, Hungary
413 </i>
414 </p>
415 </li>
416 </ul>
417 <h3 className={styles.section__subtitle}>
418 🏕️&nbsp;Research visits
419 </h3>
420 <ul className={styles.cv}>
421 <li className={styles.cv__item}>
422 <h4 className={styles.cv__title}>
423 Graduate research trainee
424 </h4>
425 <p className={styles.cv__times}>
426 <span className={styles.cv__time}>May&ndash;June 2019</span>{' '}
427 <span className={styles.cv__time}>October 2020</span>
428 </p>
429 <p>
430 <i>
431 <a href="https://web.archive.org/web/20201124184148/https://www.mcgill.ca/ece/daniel-varro">
432 Department of Electrical and Computer Engineering,
433 </a>{' '}
434 <a href="https://www.mcgill.ca/">McGill Univeristy,</a>{' '}
435 </i>
436 Montreal, Canada
437 </p>
438 </li>
439 <li className={styles.cv__item}>
440 <h4 className={styles.cv__title}>Visting researcher</h4>
441 <p className={styles.cv__times}>
442 <span className={styles.cv__time}>March 2019</span>{' '}
443 </p>
444 <p>
445 <i>
446 <a href="https://web.archive.org/web/20190430204608/https://people.disim.univaq.it/cortelle/">
447 Department of Computer Science and Engineering, and
448 Mathematics,
449 </a>{' '}
450 <a href="https://www.univaq.it/en/index.php?&lang_s=en">
451 University of L'Aquila,
452 </a>{' '}
453 </i>
454 Italy
455 </p>
456 </li>
457 </ul>
458 <h3 className={styles.section__subtitle}>
459 📔&nbsp;Academic service
460 </h3>
461 <ul className={styles.cv}>
462 <li className={styles.cv__item}>
463 <h4 className={styles.cv__title}>
464 Extended Review Committe member
465 </h4>
466 <p className={styles.cv__times}>
467 <span className={styles.cv__time}>
468 <a href="https://2023.splashcon.org/committee/splash-2023-oopsla-external-review---artifact-evaluation-committee">
469 OOPSLA &rsquo;23
470 </a>
471 </span>{' '}
472 <span className={styles.cv__time}>
473 <a href="https://2023.ecoop.org/committee/ecoop-2023-research-papers-extended-review-committee">
474 ECOOP &rsquo;23
475 </a>{' '}
476 and{' '}
477 <a href="https://2022.ecoop.org/committee/ecoop-2022-papers-extended-review-committee-">
478 &rsquo;22
479 </a>
480 </span>
481 </p>
482 </li>
483 <li className={styles.cv__item}>
484 <h4 className={styles.cv__title}>
485 Artifact Evaluation Committe member
486 </h4>
487 <p className={styles.cv__times}>
488 <span className={styles.cv__time}>
489 <a href="https://2023.splashcon.org/committee/splash-2023-oopsla-external-review---artifact-evaluation-committee">
490 OOPSLA &rsquo;23
491 </a>{' '}
492 and{' '}
493 <a href="https://2021.splashcon.org/track/splash-2021-Artifacts">
494 &rsquo;21
495 </a>
496 </span>{' '}
497 <span className={styles.cv__time}>
498 <a href="https://2023.ecoop.org/committee/ecoop-2023-artifact-evaluation-artifact-evaluation-committee">
499 ECOOP &rsquo;23
500 </a>{' '}
501 and{' '}
502 <a href="https://2022.ecoop.org/committee/ecoop-2022-artifacts-artifact-evaluation-committee">
503 &rsquo;22
504 </a>
505 </span>{' '}
506 <span className={styles.cv__time}>
507 <a href="https://web.archive.org/web/20230209015023/https://fase-conf.github.io/">
508 FASE &rsquo;23
509 </a>
510 </span>{' '}
511 <span className={styles.cv__time}>
512 <a href="https://www.etaps.org/user-profile/archive/53-etaps-2022/491-esop-2022-artifact-evaluation.html">
513 ESOP &rsquo;22
514 </a>
515 </span>{' '}
516 </p>
517 </li>
518 <li className={styles.cv__item}>
519 <h4 className={styles.cv__title}>Reviewing for journals</h4>
520 <ul className={styles.cv__activities}>
521 <li
522 className={clsx(
523 styles.cv__activity,
524 styles['cv__activity--tight'],
525 )}
526 >
527 Science of Computer Programming
528 </li>
529 <li
530 className={clsx(
531 styles.cv__activity,
532 styles['cv__activity--tight'],
533 )}
534 >
535 Journal of Logical and Algebraic Methods in Programming
536 </li>
537 </ul>
538 </li>
539 </ul>
540 </div>
541 </div>
542 </div>
543 </section>
544 </Layout> 24 </Layout>
545 ); 25 );
546} 26}