Ox-hugo Exporter

Created: Jan 26 2025, 22:00 UTC
Last modified: Jan 28 2025, 08:37 UTC

An org-mode exporter that I use to convert and org-roam note cache into a collection of Markdown files that can be made part of a Hugo site or, with some massaging, and eleventy site.

One issue with using this exporter, indeed with any org exporter, is that it doesn’t really deal with a project. You convert individual files. So, for example, when you’re converting an org file to markdown, there’s no notion of preserving that path of the file in the output.

Sections

With ox-hugo you specify the section that the post is going under, with org-hugo-section

Comparison with ox-html

The ox-hugo converter turns org files into Hugo flavoured markdown. When Hugo converts the markdown files into HTML, I’ve found that the there aren’t as many CSS hooks available in the HTML, as compared to the ox-html converter which adds a bunch of wrapper divs which makes styling easier.

This is why my reading list isn’t strictly part of my org-roam site. My org-roam notes are converted to HTML via markdown which is produced from ox-hugo, and I find that getting the styles to do what I want is tougher in that case. So instead I use the ox-html converter and let then let Hugo pass the HTML through.