A reminder to myself, since I will forget.

Create the post

mise run post -- "My new post"

That slugifies the title into a filename, copies archetypes/default.md into content/posts/my-new-post.md, and writes the title back verbatim, so punctuation and Dutch capitalisation survive. Pass --slug when the derived slug is unwieldy.

Front matter

---
title: "Writing a post"
date: 2026-08-01T14:30:00Z
draft: false
summary: "Shown on the index pages."
tags: ["hugo"]
---

Only title and date are required. summary overrides the auto-generated excerpt on the home and section pages; tags render as pills under the title.

Add a Dutch version

Translations sit next to the English file with a language suffix, and get a Dutch slug so the URL reads properly too:

mise run post -- "Mijn nieuwe bericht" --lang nl

That writes content/posts/mijn-nieuwe-bericht.nl.md and sets the slug, so it publishes to /nl/berichten/mijn-nieuwe-bericht/. A post without a translation simply does not appear in the other language.

Preview it

mise run dev

This serves the site at http://localhost:1313 with live reload, and includes drafts. Flip draft to false, commit, and open a pull request. CI builds the site and comments a Cloudflare preview URL on the PR. Merging to main publishes it.