← Back to write-ups
04 Jul 20262 min read

Sample write-up — replace me

This is a placeholder post so the blog page has something to show. It also doubles as a quick guide to publishing your own.

How this blog works

Every post is a plain HTML file living in /blog/posts/. There's no backend, database, or build step — GitHub Pages serves each file directly, and this listing page just reads metadata from /blog/posts.js to build the cards and filter chips.

Publishing a new write-up

Tags and filtering

Whatever you put in a post's tags array in posts.js automatically becomes a filter chip on the listing page — no extra setup needed.

Once you've published a real write-up, delete this file and remove its entry from posts.js.