Merge pull request 'Update PGP Key' (#15) from dev into main

Reviewed-on: #15
This commit is contained in:
Tibo De Peuter 2026-03-22 16:03:17 +01:00
commit 58fcca1cdb
5 changed files with 271 additions and 211 deletions

View file

@ -2,7 +2,7 @@
"about_me": {
"hobbies": {
"homelab": "Programming and computers are my passion, so a lot of my free time is spent working on various projects. The project I am most proud of is my homelab. I love learning about new technologies and applying that knowledge in my homelab setup. More information about my homelab is available on its <a href=\"/pages/homelab.html\">dedicated page</a>.",
"horses": "When I am not behind a screen, I am busy with my other hobby, which is horseback riding. I love taking care of horses and focussing on dressage riding. At the moment, I only ride for fun.",
"horses": "When I am not behind a screen, I am busy with my other hobby, which is horseback riding. I love taking care of horses and focusing on dressage riding. At the moment, I only ride for fun.",
"passion": "My passion for computers started when I decided to learn how to create my own website at the age of 13. Many websites followed after that first one. Since then, I pursued this interest by studying Computer Science.",
"summer": "During the summer, I often take a hard break from screens. I enjoy hiking, especially in the mountains. I can often be found in front of a group of children, as I am a youth leader since 2018. Creating fun activities and seeing children have a great time is very rewarding for me.",
"title": "Hobbies"
@ -29,15 +29,15 @@
"artbot": {
"1_coaching": "Coach small teams of children aged 11 to 12 and let them discover how robots can create art.",
"2_assist": "Assist during the accompanying lessons.",
"3_robots": "Build robots with Lego Mindstorms and Arduino's. Program movements in <a href=\"https://learn.sparkfun.com/ArduBlock\">Ardublock</a>.",
"3_robots": "Build robots with Lego Mindstorms and Arduinos. Program movements in <a href=\"https://learn.sparkfun.com/ArduBlock\">Ardublock</a>.",
"4_themes": "Work on societal themes such as environmental pollution.",
"title": "ArtBot youth leader"
},
"bsc_computer_science": {
"1_insights": "Solid theoretical foundation in computer science, with insights into fundamental concepts, principles and design patterns, supported by practical applications in projects.",
"2_background": "Strong algorithmic background, including complexity analysis, advanced data structures, algorithmic paradigms, hashing, compression and automata.",
"3_knowledge": "Thorough knowledge of secure systems and networks: RESTful APIs, semantic web, network security, cryptography, operating systems, and both relational and NoSQL databases.",
"4_ai": "Understanding of ethical and sustainable Artificial Intelligence, <abbr title=\"Explainable AI\">XAI</abbr>, neural networks, <abbr title=\"Constraint Satisfaction Problem\">CSPs</abbr>, <abbr title=\"Hidden Markov Models\">HMMs</abbr> and computer vision.",
"3_knowledge": "Thorough knowledge of secure systems and networks: RESTful APIs, semantic web, network security, cryptography, operating systems, and databases.",
"4_ai": "Understanding of ethical and sustainable Artificial Intelligence, <abbr title=\"Explainable AI\">XAI</abbr>, neural networks, <abbr title=\"Constraint Satisfaction Problem\">CSPs</abbr>, <abbr title=\"Hidden Markov Models\">HMMs</abbr>, and computer vision.",
"5_learning": "Lifelong learning, quickly and independently adopting new technologies and methodologies.",
"description": "Minor in security and parallel systems",
"title": {
@ -106,7 +106,7 @@
},
"web_technologies": "Web technologies",
"youth_leader": {
"1_activities": "Organize play activities and accompany groups of up to 30 children (ages 3-15) during summer camps and day trips. ",
"1_activities": "Organize play activities and accompany groups of up to 30 children (ages 3-15) during summer camps and day trips.",
"3_cooperation": "Collaborate directly with fellow (head) youth leaders and external partners to ensure smooth operations.",
"title": "Youth leader"
}
@ -131,7 +131,7 @@
"2020": "TrueNAS Core (FreeBSD) on an old laptop, dual drive. TrueNAS apps running in jails.",
"2021": "Upgrading to TrueNAS SCALE (Debian), adding external drives. TrueNAS apps running in K3s.",
"2022": "Migrating from TrueNAS apps to <a href=\"https://truecharts.org/\">TrueCharts</a> (no longer maintained for TrueNAS). Focus on reverse proxying and VPN. Adding a simple backup server. Automated backups using TrueNAS with custom script to send ZFS snapshots to a non-ZFS system.",
"2023": "Building a custom enclosure for the homelab hardware, so the disk aren't just sitting on a shelf anymore, they are cooled better and better cable management.",
"2023": "Building a custom enclosure for the homelab hardware, so the disks aren't just sitting on a shelf anymore, they are cooled better and better cable management.",
"2024": "Adding a Proxmox VE node, migrating (all) my services to it. Most important ones run in their own dedicated VM. Focus on Infrastructure as Code. Increased stability.",
"2025": "Automating deployment of VMs and containers. Moving towards platform engineering to streamline development.",
"header": "History"
@ -232,4 +232,4 @@
"present": "present",
"year_of_birth": "Year of birth"
}
}
}

View file

@ -3,7 +3,7 @@
"hobbies": {
"homelab": "Programmeren en computers zijn mijn passie, dus veel van mijn vrije tijd gaat naar het werken aan verschillende projecten. Het project waar ik het meest trots op ben is mijn homelab. Ik hou van nieuwe technologieën ontdekken en die kennis toe te passen in mijn homelab setup. Meer informatie over mijn homelab staat op de <a href=\"/pages/homelab.html\">speciale pagina</a>.",
"horses": "Als ik niet achter een scherm zit, ben ik bezig met mijn andere hobby: paardrijden. Ik hou ervan voor paarden te zorgen en op dressuur te focussen. Momenteel rijd ik alleen recreatief.",
"passion": "Mijn passie voor computers begon toen ik op 13-jarige leeftijd besloot te leren hoe ik mijn eigen website kon maken. Op die eerste website volgde vele andere. Sindsdien heb ik die interesse achtervolgd door informatica the studeren.",
"passion": "Mijn passie voor computers begon toen ik op 13-jarige leeftijd besloot te leren hoe ik mijn eigen website kon maken. Op die eerste website volgden vele andere. Sindsdien heb ik die interesse achtervolgd door informatica te studeren.",
"summer": "Tijdens de zomer neem ik vaak een harde pauze, weg van schermen. Ik geniet van wandelen, zeker in de bergen. Je vindt me vaak voor een groep kinderen, omdat ik sinds 2018 animator in het jeugdwerk ben. Leuke speelactiviteiten maken en kinderen plezier zien hebben geeft me voldoening.",
"title": "Hobby's"
},
@ -36,7 +36,7 @@
"bsc_computer_science": {
"1_insights": "Solide theoretische basis in informatica, met inzicht in fundamentele concepten, principes en design patterns, ondersteund door praktische toepassingen in projecten.",
"2_background": "Sterke algoritmische achtergrond, complexiteitsanalyse, geavanceerde datastructuren, algoritmische paradigma's, hashing, compressie en automaten.",
"3_knowledge": "Grondige kennis van veilige systemen en netwerken: RESTful API's, semantische web, netwerkbeveiliging, cryptografie, besturingssystemen, relationele- en NoSQL-databanken.",
"3_knowledge": "Grondige kennis van veilige systemen en netwerken: RESTful API's, semantische web, netwerkbeveiliging, cryptografie, besturingssystemen en databanken.",
"4_ai": "Inzicht in ethische en duurzame Artificiële Intelligentie, <abbr title=\"Explainable AI\">XAI</abbr>, neurale netwerken, <abbr title=\"Constraint Satisfaction Problem\">CSP</abbr>'s, <abbr title=\"Hidden Markov Model\">HMM</abbr>'s en computer visie.",
"5_learning": "Levenslang leren en snel zelfstandig nieuwe technologieën en methodologieën eigen maken.",
"description": "Minor beveiliging & parallelle systemen",
@ -107,7 +107,7 @@
"web_technologies": "Webtechnologieën",
"youth_leader": {
"1_activities": "Organiseren van speel&shy;activiteiten en begeleiden van groepen tot 30 deelnemers (3-15 jaar) tijdens vakantie&shy;kampen en dag&shy;uitstappen.",
"3_cooperation": "Direct samenwerken met mede-(hoofd-)animatoren en externen voor een vlot kampwerking.",
"3_cooperation": "Direct samenwerken met mede-(hoofd-)animatoren en externen voor een vlotte kampwerking.",
"title": "Animator in het Jeugdwerk"
}
},
@ -131,7 +131,7 @@
"2020": "TrueNAS Core (FreeBSD) op een oude laptop, twee schijven. TrueNAS apps in jails.",
"2021": "Upgrade naar TrueNAS SCALE (Debian), extra externe schijven. TrueNAS apps in K3s.",
"2022": "Migratie van TrueNAS apps naar <a href=\"https://truecharts.org/\">TrueCharts</a> (intussen niet meer ondersteund voor TrueNAS). Focus op reverse proxying en VPN. Simpele backup server toegevoegd. Geautomatiseerde backups via TrueNAS met eigen script om ZFS snapshots naar een non-ZFS systeem te sturen.",
"2023": "Custom behuizing voor de homelab hardware, zodat de schijven niet meer gewoon op een plank liggen, ze beter gekoeld worden en verbeterde cable management.",
"2023": "Custom behuizing voor de homelab hardware, zodat de schijven niet meer gewoon op een plank liggen, maar beter gekoeld worden en met verbeterde cable management.",
"2024": "Extra Proxmox VE node, al mijn services ernaar gemigreerd. De meest belangrijke draaien in hun eigen VM. Focus op Infrastructure as Code. Verbeterde stabiliteit.",
"2025": "Geautomatiseerde deployment van VMs en containers. Shift naar platform engineering om ontwikkeling te stroomlijnen.",
"header": "Geschiedenis"
@ -144,7 +144,7 @@
"intro": "Mijn homelab wordt gebruikt om verschillende kritieke en niet-kritieke services te self-hosten. Ze bestaan uit services die ik en/of mijn familie en vrienden dagelijks gebruiken. Andere zijn gewoon voor het plezier, voor het gemak, om nieuwe dingen te leren of om te experimenteren.",
"jellyfin": "<a href=\"https://jellyfin.org/\">Jellyfin</a> voor media streaming",
"most": "De meestgebruikte services zijn:",
"nextcloud": " <a href=\"https://nextcloud.com/\">Nextcloud</a> als een Microsoft 365/Google Drive alternatief",
"nextcloud": "<a href=\"https://nextcloud.com/\">Nextcloud</a> als een Microsoft 365/Google Drive alternatief",
"vaultwarden": "<a href=\"https://www.vaultwarden.ca/\">Vaultwarden</a> als een password manager"
},
"setup": {
@ -165,7 +165,7 @@
},
"hero": {
"enthusiast": "Fan van softwarearchitectuur, DevSecOps, infrastructuur & automatisering.",
"passionate": "Leergierig ontwikkelaar met een passie voor het bouwen van <strong>veilige, performante systemen</strong> met <strong>onderhoudbare code</strong>",
"passionate": "Leergierige ontwikkelaar met een passie voor het bouwen van <strong>veilige, performante systemen</strong> met <strong>onderhoudbare code</strong>",
"student": "Informaticastudent"
},
"pillars": {
@ -232,4 +232,4 @@
"present": "heden",
"year_of_birth": "Geboortejaar"
}
}
}

360
key.asc
View file

@ -1,9 +1,6 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Comment: 08A9 C1C8 CF91 59C9 172A BA12 9B11 F524 3089 DB5B
Comment: Tibo De Peuter <tibo.depeuter@ugent.be>
Comment: Tibo De Peuter <tibo@depeuter.dev>
xsFNBGX9hOgBEADDNQqflvaoX40NHmLTYNZlkk0tFTs9KaM4leC1CXC5LdvFUjXF
mQINBGX9hOgBEADDNQqflvaoX40NHmLTYNZlkk0tFTs9KaM4leC1CXC5LdvFUjXF
rprrrtkkzdOXDhozDcUDFpXvgQ8CPKF6eNTzZUDAQGPNzYOOX5kmKGH7U478l1dN
z5/gQ7D+wpTKlIrx1pbauDP852jcntYu+ETzjcCOCKm8VU9LuU45uNMkNQdTjWmJ
nnGcSfwnJpryewl4yaHnaabrtu8t21g1Oev9U1xtokNsTNBIU2wx0hboLv7dqd6U
@ -14,173 +11,190 @@ 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
MKSa
=2ZKV
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
nXmr9km5lJqz/FAFVgFWHOa/+DE=
=tHl3
-----END PGP PUBLIC KEY BLOCK-----

View file

@ -44,6 +44,12 @@ function getTemplate() {
transform: translateX(25%);
}
}
@media (prefers-reduced-motion: reduce) {
.marquee-content {
animation-play-state: paused;
}
}
</style>
<div class="marquee-wrapper">

View file

@ -389,6 +389,40 @@ ul.links img {
}
}
/* Blinking cursor */
h1::after {
content: '_';
position: absolute;
padding: 0;
margin: 0;
animation: blink 1s steps(24, end) infinite;
animation-play-state: running;
}
@keyframes blink {
0% {
opacity: 1;
}
100% {
opacity: 0;
}
}
@media print {
h1::after {
display: none;
}
}
@media (prefers-reduced-motion: reduce) {
h1::after {
display: none
}
}
/* Dictionary */
.dictionary-entry {
@ -581,36 +615,42 @@ ul.links img {
flex-direction: column;
}
/* URL animations */
/* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion */
/* URL animation on hover
Draw a line from left to right when hovering over the link */
a {
/* Reset to default text color */
color: inherit;
position: relative;
}
a::before {
content: '';
position: absolute;
/* Height of the line */
bottom: -1px;
height: var(--line-thickness);
left: 0;
width: 0;
background-color: var(--primary-color);
}
a:hover::before {
width: 100%;
}
/* Don't underline img/icons with urls */
a:has(.icon)::before {
display: none;
}
@media (prefers-reduced-motion: no-preference) {
/* URL animation on hover
Draw a line from left to right when hovering over the link */
a {
/* Reset to default text color */
color: inherit;
position: relative;
}
a::before {
content: '';
position: absolute;
/* Height of the line */
bottom: -1px;
height: var(--line-thickness);
left: 0;
width: 0;
background-color: var(--primary-color);
transition: width var(--animation-duration) ease;
}
a:has(.icon)::before {
display: none;
}
a:hover::before {
width: 100%;
}
button:hover {
transition: background-color var(--animation-duration) ease, color var(--animation-duration) ease;
}