Impressions from HugoConf 2022

Takeaways from two great days that focused on the Hugo static site generator.


CloudCannon’s HugoConf 2022 event, held this past weekend in the online presence of several hundred registered “attendees” who wanted to learn more about the Hugo static site generator (SSG), was fascinating and fun. As I told CloudCannon’s David Large:

I’ve seen many online events of this nature, including some put on by much larger operations than [CloudCannon], which didn’t go remotely as smoothly, or pack as much good info and interesting presentations into so relatively little time. How amazingly well it all came off clearly reflects the superior preparation and effort of all of you, and it was a winner from start to finish.

For those of you who missed HugoConf 2022, the individual presentations are available as separate videos on CloudCannon’s YouTube channel, and you also can view recordings of the entire streams from Day 1 and Day 2.

In no particular order, here are some of my takeaways from this first-ever HugoConf, of which I hope there will be future iterations.

For me, the highlight of the whole thing was Day 2’s live interview with Hugo’s creator, Steve Francia. I already knew that he’d built Hugo back in 2013 out of his own frustrations with the (then-) molasses-like Jekyll SSG, but was surprised and amused when he said he’d also used the process to learn about the Go language on which he chose to base Hugo. May all learning experiences yield such great results!

Any doubts I’d entertained about Hugo’s long-term future were wiped away by how multiple presenters demonstrated projects that make some ingenious uses of Hugo. Unlike what often happens in events like these — i.e., presenters show off only their own stuff and don’t necessarily make much of a connection between it and the actual project around which the event is supposed to be centered — these folks made it clear that they “get” Hugo. They understand Hugo’s unique advantages, especially when compared to SSGs that dump a ton of JavaScript onto visitors’ browsers1, and their presentations reflected that.

A couple of intriguing acronyms appeared, with mention of two tech stacks that employ Hugo:

  • The THANG stack2Tailwind CSS, Hugo, Alpine.js, Netlify, and Go.
  • The HABIT stack3 — Hugo, Alpine.js, Bookshop (CloudCannon’s open-source project for component-based development in SSGs), and Tailwind. (As for the missing I: perhaps they thought HABT would look weird and they were already pronouncing it habit, anyway, so . . .)

Speaking of Bookshop: its primary developer, CloudCannon’s Liam Bigelow, announced another open-source project, called Pagefind, which gives a website fully static search “without any extra infrastructure.” I gave it a try and, while I’ll defer using it here until it’s a bit more mature and a few rough edges are smoothed out4, I was highly impressed. It’s code-light and staggeringly fast. Here’s Bigelow’s presentation from Day 1:

One more thing . . .

Amid all the Tailwind love apparent in comments from both presenters and “attendees,” I was a little sad not to hear some kind words about Sass, too. Of course, Tailwind is simply the hotter commodity in the web dev community, as has been true for quite a while now. Also, I suspect that Hugo’s ongoing issues concerning Dart Sass vs. the deprecated LibSass, about which I’ve written numerous times in the last year-and-a-half, probably don’t help. In any event: this is by no means a reflection on HugoConf but, rather, just an offhand observation on my part.

  1. And, no, the current movement toward the islands architecture model doesn’t fully obviate that, although it at least is moving the world of JavaScript-based SSGs in the right direction, away from their bloated pasts. Evolution is good overall, yet never extinctions-free. ↩︎

  2. By Carl Johnson, Director of Technology at Spotlight PA↩︎

  3. By Jan Claasen, a web dev at CloudCannon. ↩︎

  4. Among other things, I’ll want to control whether Pagefind includes images in what it grabs. I was able to use styling to hide the images, but they — and some other image files — still showed up in the download, so I want the option to ignore them altogether. ↩︎

Reply via email
View comments