Image: James Sullivan on Unsplash

How I built this site

March 24, 2026

Building

Before you ask: no, it’s not vide coded. But if we’re making AI confessions, then I’ll admit to a bit of Github Copilot, because man doesn’t do CSS and really doesn’t want to.

I wanted something easy to maintain, free to host, and familiar to me as it’s a solo project. I’ve been building things in Go for a few years now, and used the (Go) Hugo framework in a previous role, so that felt like the best and most obvious option.

Hugo lets you define most of how the site looks using configuration files in Yaml, markdown and relatively simple templated HTML. All the content is in Markdown, which is super easy to update.

Ideally getting it looking how I want should be a one-time effort at the beginning, but in practice it’ll probably be something to tinker with forever.

Modifications

Hugo is great for its range of themes. In this case Hugo Fresh, which builds easily without any potentially complicated dependencies like Node.JS.

That said, no theme is going to be perfect for what you want. I’ve had to make lots of small modifications to simplify Hugo Fresh for what I wanted. Other than the obvious updates to customise the branding1, I have also done the following:

  1. Stripped out the sidebar, and most of the default sections from the home page. Then I updated the remaining section layouts to tweak the fonts and minor elements of layout.
  2. Added shortcodes to manage images, format block quotes, put in the current year, and other little helpful things.
  3. Added a layout for the blogs list page, and for a single blog (like this one).
  4. Added a layout for the services pages - this is just a cut-down version of the blog layout.

You can still see the resemblance between this site and the example Hugo Fresh site:

two websites side by side

One thing that Copilot has actually been really useful for is not just making small changes for me, but also explaining how different elements are implemented in the theme, and how they can be modified.

Hosting

This one’s easy; everything is on Cloudflare now, and a Pages worker is free and relatively easy to use. Plus there are lots of existing blogs2 on deploying a static site using Cloudflare Pages.


  1. Shout out to Iconic UX for the illustrations. ↩︎

  2. E.g. from Cloudflare, and this blog↩︎