Colophon
This site is a SolidStart application written in plain JavaScript and run with Bun. Every page is prerendered to static HTML at build time; the server hands those files over, passes the contact form to the mail server on the same machine, and renders an essay again when you reach it from another page on the site. Essays are markdown files rendered with Marked, with code highlighted by Shiki in both color themes. The longer version is an essay, “This site”.
There is one hand-written stylesheet. Text is set in Literata, with Fraunces for headings - both self-hosted from this domain under the SIL Open Font License - at about 75 characters a line. Dates, navigation and labels use the monospace your device already has, which costs no download. The theme follows your system preference; the SHIFT button in the status window at the foot of the page stores your choice in localStorage and nowhere else.
The status window in the footer and the 404 screen are set in Web437 IBM VGA 8x16 from VileR’s Ultimate Oldschool PC Font Pack (CC BY-SA 4.0), in stock VGA text-mode colors. The favicon is original pixel art, and more is on the drawing board: eventually every systems person rebuilds the port they used to work in, sixteen pixels at a time.
The fonts and the open-source code that runs in your browser are listed with their licences in a plain text file: Licences.
The site is self-hosted on a Hetzner server in Germany behind nginx with HTTP/3, TLS from Let’s Encrypt. It makes no requests to anyone else’s servers: no fonts, no analytics, no cookies, no CDN. Traffic is counted from the server’s own access log, summarized weekly on the same machine; your browser is never asked to participate.
Privacy
In full: if you email me, or write through the contact form, your message and address sit in a mailbox on that same German server, kept as ordinary correspondence and shared with no one. An unsent draft stays in your own browser tab, so following a link and coming back does not lose it; it is gone once the message is sent or the tab is closed. To limit how many messages one connection can send, the server keeps your IP address in memory for an hour after your last message. The server’s access logs are deleted after fourteen days; only the weekly counts survive. That is everything this site ever knows about you. The usual GDPR rights apply - I am the controller, and is where to exercise them.