Replaced the Jekyll-based blog with a custom static site generator written in Go.

Why

Jekyll works, but 227 gem dependencies is a lot of surface area for things to break. When GitHub decides a dependency has a CVE, your build fails. Wanted something simpler and more durable.

What

Built ssg - about 600 lines of Go with one dependency (goldmark for markdown parsing).

It:

  • Parses posts from _posts/ with YAML front matter
  • Generates paginated index and tag pages
  • Renders mermaid diagrams
  • Includes search via simple-jekyll-search
  • Outputs static HTML to site/

Workflow

make && ./ssg
make deploy

No GitHub Actions, no build step on their end. Just static files served as-is.

Source

The generator is at github.com/decuser/ssg.