Hello, world

This is the first post on the new site. It exists mostly to make sure that entries render, that dates sort the right way, and that topics link where they should.

Once a few real posts are here, this one can be deleted from the control panel or by removing its file from content/collections/blog.

How this site is built

The site runs on Statamic, a flat-file CMS built on Laravel. Every post is a Markdown file with a little YAML at the top, and the whole thing is checked into git.

Why flat files

  • Content is versioned alongside the code, so a bad edit is a git revert away.
  • There is no database to back up or migrate.
  • Writing in a text editor is fine, and so is the control panel. Both write the same files.

The stack

Layer Choice
CMS Statamic 6
Framework Laravel 13
Styling Tailwind CSS 4
Bundler Vite

Templates are written in Antlers, Statamic's templating language. A post list is a single tag:

{{ collection:blog limit="5" }}
    <a href="{{ url }}">{{ title }}</a>
{{ /collection:blog }}

That is the whole post loop on the home page.

On keeping a blog

A blog is a place to think out loud. The act of explaining something to a reader who isn't in the room is the fastest way to find the gaps in your own understanding.

Three rules I'm going to try to follow here:

  1. Short is fine. A post can be two paragraphs.
  2. Done is better than polished. Drafts that never ship help no one.
  3. Link generously. Most good ideas came from somewhere.

We'll see how long that lasts.

Older writing