BoumWave: My Blog Generator That Does Just What It Needs To
Published on November 2, 2025
A few months ago, I decided to start this blog. Nothing fancy, just a place to write my thoughts in Markdown and publish them as HTML. Simple, right? That's what I thought.
Hugo and the Complexity Trap
I started with Hugo. Everyone talks about it, it's fast, it's modern. I downloaded the tool, started exploring the available themes. And there, first problem: they're all ugly. Not just "not my style," genuinely ugly. Why? Because Hugo has been around for a long time, and most themes were created years ago, in a different web era.
Okay, no big deal, I thought I'd take a decent theme and improve it. That's when I discovered the real problem: the tool is complex. There are templates everywhere, all over the place, with a directory logic that escaped me. I just wanted to modify a few things, remove useless features — tags, pagination, search, all those things from an old era — but it was an obstacle course.
I spent time trying to understand how to disable features I didn't need. At that moment, I stopped dead and asked myself: why am I complicating things like this?
The Click: Stop Overthinking, Act Simple
My need was ridiculously simple: take a Markdown file, transform it into HTML with my template, and automatically generate SEO metadata. Period. No pagination, no tags, no search. Just an article that becomes a page.
I told myself: "I just need to create my HTML template, insert the content each time via a Python script, and that's it."
That's exactly what I did. I created a homemade
script that took my Markdown, generated the
HTML, and done. It worked. Then I realized it
was missing automatic meta tags (Open Graph,
Twitter Cards, JSON-LD). I added them. Then I
wanted the article link to automatically insert
into my
index.html
. I did it. Then I added multilingual support
because I sometimes write in English. And
finally, I added automatic sitemap generation.
Each time, I added just what I needed. Nothing more. And at some point, I realized I had something super practical in my hands.
From Homemade Code to Open Source Project
Seeing my code take shape, I thought it could serve other people. People who, like me, were tired of the unnecessary complexity of modern static site generators. People who just wanted to write and publish, without spending an evening learning a tool just to do something so basic.
So I decided to clean it up and make it an open source project: BoumWave .
The philosophy is simple: do one thing, and do it well . BoumWave generates HTML from Markdown. Period. Design is your business. No imposed "themes" system, you do what you want with your HTML and CSS. The purpose of a generator is to generate HTML based on the Markdown article. The rest — appearance, additional features — is completely separate and you decide.
Why BoumWave Exists
I think we tend to look for complete solutions before even knowing what we really need. Tools like Hugo or Jekyll have become overkill over time.
BoumWave is a return to essentials. No learning
curve, no 200-page documentation to read, no
hidden magic. You have a config file
boumwave.toml
where everything is explained inside. You
generate a Markdown file, you run a command, you
get your HTML with all SEO metadata. That's it.
I use BoumWave to run this blog. It's fast, lightweight, and transparent.
For Those Who Want to Try
If the approach interests you, here's how BoumWave works concretely.
Installation
:
bash uv add boumwave
The four commands :
-
bw init: Creates the TOML configuration file -
bw scaffold: Creates the basic structure based on the TOML configuration file -
bw new_post <title>: Creates a new Markdown file with frontmatter -
bw generate <title>: Generates HTML from your Markdown files
Configuration
: Everything happens in a single
boumwave.toml
file. You define the names of your HTML
templates, your URLs and that's it.
Multilingualism is native: you write in multiple
languages and BoumWave generates the
corresponding pages.
Design : You do what you want. BoumWave doesn't touch your CSS, doesn't impose any structure. You have total control over your site's appearance. There are only 3 templates:
-
your
index.htmlpage which is your homepage. It's yours, you do what you want with it. -
The
post.htmlpage which is your template for inserting articles. You create your own design and articles will be inserted into it. -
And finally, the
link.htmlpage which is the code that will be inserted into yourindex.htmlfor each new link.
If you're tired of complexity and just want to write and publish, try BoumWave . It's exactly what you need. Nothing more, nothing less.