A little over a year ago I wrote about going static, moving this site from a Cloudways server to Cloudflare Pages using WordPress + the Simply Static plugin. At the end of that post I said “I’m excited to work on simplifying it and maybe base it around Markdown… we’ll see.” Well, here we are.

The old setup worked, but it was annoying. I had to run a full WordPress install locally via Laravel Herd, write a post, export the entire site with Simply Static, and then manually deploy. It felt like driving a truck to get groceries.

So I Claude Code rebuilt the whole thing with Hugo.

The source of truth is now a folder of Markdown files in a git repo. No database, no PHP, no plugins. Just text files that I can edit with whatever I want. Hugo builds the site in milliseconds and the output goes to Cloudflare Pages as static assets.

What I cared about:

  • Keep every old URL working: Hugo generates the same /:slug/ permalink structure WordPress used. No redirects needed, no broken links. This was non-negotiable.
  • Markdown as the source of truth: writing and versioning in the same place. git log is my changelog now.
  • Fast hosting: Cloudflare Pages for static assets is extremely fast and free.
  • llms.txt support: I added llmstxt.org compliant output so AI tools can read my content properly. Every post gets a /index.md alongside the HTML, plus there’s a site-wide /llms.txt and /llms-full.txt.

The entire migration that included export script, custom Hugo theme, llms.txt templates and deployment config was done in a couple of Claude Code sessions.

The theme is called vivre. It’s plain CSS, no build tools, no JavaScript frameworks. Just Petrona for body text and Work Sans for headings. I wanted something that felt warm and emphasized the content.

I’m very happy with this setup. Writing a new post is now: create a .md file, write, hugo server -D to preview, push, deploy. That’s it. The simplicity I was looking for all along.

PD: If you’re curious about the llms.txt stuff, try hitting /llms.txt or /llms-full.txt on this site. Pretty cool, right?

I no longer have comments enabled here, but you can reach me on X.