Topping out ceremony with Hugo

After my homepage had remained unchanged for many years, it was high time to at least undertake a technical overhaul in order to adapt to the changed circumstances. Whereas visitors to the homepage used to access it mainly via desktop computers, it is now much more common to surf the Internet using a tablet or smartphone. And the previous format was completely unsuitable for this.

Criteria for the redesign

Since the old homepage had been developed “by hand” directly in HTML and without CSS, the first step was to decide which tools to use for the redesign in order to end up with a modern-looking homepage.

The following characteristics were to be taken into account as constraints:

  • Modern design without having to delve too deeply into the technology
  • Responsive design for different screen sizes
  • Light/dark mode
  • Multilingual (German and English)
  • Customizable
  • No additional costs

Tool selection

Since I didn’t want to deal with managing a content management system (such as WordPress), I looked for a static website generator. I already had some experience with Jekyll in connection with the documentation of one of my open source components, but found it relatively cumbersome to use.

While researching alternatives, I came across Hugo. The fact that Hugo can be used without extensive installation of additional software, that page generation takes very little time, and that it natively supports a wide range of design options (such as outputting mathematical formulas or diagrams) quickly convinced me that I had found the right tool.

Theme selection

However, creating my own layout from scratch without in-depth knowledge of CSS didn’t seem sensible to me, so I started looking for a suitable existing Hugo theme. After experimenting with various themes, I finally settled on the FixIt theme, as it promised to meet most, if not all, of my requirements.

In practice, it proved to be quite tedious in places to make the necessary adjustments until I was satisfied with the display format of the various page categories. This started with me wanting to have dates displayed differently depending on the language, for example, and ended with the requirement to select the German or English version on the home page depending on the visitor’s preferred language.

Relaunch

In December 2025, the time had finally come: the revision of the existing content (insofar as it was worth keeping) was complete and additional pages had been created, so that nothing stood in the way of the relaunch.

0%