For years this blog ran on Bludit, a flat-file CMS written in PHP. It served me well: no database to manage, simple deployment, and a decent admin UI. However, my workflow has changed significantly over the last two years, and the time has come to move on.

I migrated everything to Jekyll, a static-site generator written in Ruby. The switch was surprisingly smooth. Since my content was already in Markdown, the migration was mostly about co-locating files, fixing occasional legacy HTML, and normalizing YAML front matter.

A few things I like about the new setup:

  • Post bundles: with minor conf adjustments to Jekyll each post now lives in its own directory alongside its images and assets, keeping everything self-contained and easy to manage.
  • Full control: The entire site lives in a Git repository. No admin panel, no PHP runtime, just Markdown and Liquid templating.
  • Automated deployment: A GitHub Actions workflow builds and deploys the site on every push. No server to maintain.
  • Lower attack surface: Without a database or active runtime, there is practically nothing to exploit.

The blog is leaner, faster, and easier to work with. If you are running a small personal site and find yourself fighting your CMS more than writing, a static generator might be worth a look.