Building this blog: Hugo, GitHub Actions, and zero servers

I wanted a blog that felt like writing in a text file and nothing more. I was inspired by James Montemagno’s post about rebuilding his site as a static blog — plain Markdown in a repo, built by Hugo, verified and published by GitHub Actions, served from GitHub Pages. No database, no CMS. Here’s the stack, start to finish. The stack Piece Tool Generator Hugo (extended) Theme PaperMod Content Markdown files in Git CI GitHub Actions Hosting GitHub Pages (free) The repo layout swiftarrow11.github.io/ ├── content/ │ ├── posts/ # your blog posts, as .md files │ ├── about.md │ ├── archive.md │ └── search.md ├── themes/PaperMod # git submodule ├── hugo.toml # site config └── .github/workflows/deploy.yml The deploy workflow The magic is a single Actions workflow that builds the site and hands the output to GitHub Pages. The key parts are the two least obvious permissions: ...

October 16, 2026 · Sudipto Rakshit