Colophon

How this site is made.

The promise on the front page is that the tech fades into the background. This page is where it comes forward. Press X on any page to see it in place.

Static pages
Astro turns Markdown and components into plain HTML at build time. No framework runs in your browser, and every page reads the same with JavaScript switched off.
The sky
One WebGL fragment shader on one canvas. It takes its colours from the same CSS custom properties as the rest of the page, runs at thirty frames a second, and stops when it is off screen or the tab is hidden. If you prefer reduced motion it draws a single still frame.
Brussels time
Sunrise and sunset are computed in your browser from the latitude and longitude of Brussels. Dawn, day, dusk and night each tint the horizon differently, in the light theme and the dark one.
Colour
Every colour is written in OKLCH and declared once as a light-dark() pair, so the two themes are one stylesheet. Each project has a single hue, and its tints are derived from it.
Layout
Cascade layers keep the stylesheet in order. Project cards use container queries, so a card decides its own layout from the room it is given. Type sizes are fluid with clamp(), and headlines use text-wrap: balance.
Motion
Pages cross-fade with cross-document view transitions, and a project title travels from its card to its page. Reveals, the reading bar and the fading sky are scroll-driven animations written in CSS. All of it is switched off by prefers-reduced-motion.
Speed
Speculation rules prerender a page when you point at its link. Fonts are variable, subset and served from this domain. Everything in /_astro/ is fingerprinted and cached for a year.
Privacy
No cookies, no analytics, no fonts or scripts from other servers. A Content-Security-Policy forbids inline scripts and styles, so the site could not load a tracker even by accident.

Credits

Set in Fraunces, Instrument Sans and Geist Mono, all open-source typefaces under the SIL Open Font License. Built withAstro and hosted on Cloudflare Pages. Designed and written with Claude, and edited by a human who has opinions.