Moving To Hugo

Matthew Tunstall

| 2 minutes

At the beginning of 2021 I took the big step to move away from WordPress into the world of static site generators. I moved the whole site over to using Sphinx with the ABlog add on. This has been working well although I spent a lot of time trying to work out how to add customisation into the mix. This has was the most frustrating part. I knew the HTML/CSS I wanted to use to create the style elements I wanted but getting it into place where Sphinx was happy with it was more of a challenge than I was expecting. In the end I largely overcame the issues and had the look and feel of the site that I was happy with.

Hugo however has been at the back of my mind ever since. Not only because it might build a large site faster but because it was a single executable. Rather than having an application like Sphinx reliant on plugins and modules to build the site I could use one binary file to do the lot. This makes updates easier as only the one file needs replacing.

Another reason to move was Markdown. Sphinx used ReStructuredText and there were aspects of the formatting like links that just made for more work. But the big difference as far as generating content is concerned is the number of Markdown editors that give a live preview of the final content (I’m currently using Apostrophe). Writing ReStructuredText would need a Sphinx build to be generated to see the output. On a plain Sphinx site this wouldn’t take any time at all. The ABlog addon does however slow the build somewhat.

Being able to view a live preview, albeit without some of the final CSS styling that Hugo would add, makes writing the bulk of the content more enjoyable.

Current Progress

  • Install Hugo
  • Develop A Hugo Theme
  • Move Old Site Content Over
    • Move Pages
    • Move Blog Posts

Installing Hugo was the easy bit.

The theme development is ongoing and the reason I am writing this post is to test parts of it out. There are a lot of links applied to text as Markdown reference style links are easy to add without cluttering up the rest of the text.

Previous post

HelloWorld

Related content

Syntaxhighlight
HelloWorld
October Update