Skip to content

Colophon

How this site is built

A personal site has to keep running in the weeks when I am busy with other things. So it is boring on purpose: plain HTML files, no server, no database and nothing to log in to.

What it is built with

The pages are generated with Astro 7 and styled with Tailwind CSS 4. I write the posts in MDX, which is Markdown with room for components, in English, Danish and German. Search is Pagefind. It builds its index when the site is built and then runs in your browser. The fonts are Inter, Plus Jakarta Sans and JetBrains Mono, served from this site. The icons are Phosphor.

Astro · Tailwind CSS · Pagefind

Where it runs

Cloudflare builds the site from GitHub and serves it from its own network. The domain and DNS are at Cloudflare too. One small Cloudflare Worker sits in front of the files. Its only job is to send www.szimnau.dk and addresses without a trailing slash to the right place with a permanent redirect.

Cloudflare Workers

How a post goes live

Everything is written in Git. Before a change can reach the site, it runs through automatic checks of titles, descriptions, the links between the three languages, headings and images. If one check fails, the change stays out. Dependabot keeps the building blocks up to date the same way.

Privacy and security

The site sets no cookies of its own, has no trackers and loads no fonts from Google. Visits are counted with Cloudflare Web Analytics, without cookies. Every page is sent with a Content Security Policy and HSTS, and a security.txt file says where to report a vulnerability.

Privacy · security.txt

What I found by accident

On 21 October 2026 I upgraded to Astro 7 and compared every page before and after. That is how I found out that the tables in two posts had been showing raw pipe characters for months. The upgrade fixed them. Nobody had written to tell me.

What does not work

Search needs JavaScript. Without it, the post list and the tags still work. The security policy still allows inline styles, because the code highlighting colours each word with its own style attribute.

Last updated 21 October 2026.