On Building Your Own Tools
There's a common objection to building your own tools: "Why reinvent the wheel?"
The answer is simple: because the wheel teaches you about roads.
The Case for Custom
When you use Hugo or Jekyll or Next.js, you're accepting someone else's model of what a website is. Their abstractions. Their opinions about routing, templating, asset pipelines.
When you build your own, you confront the actual problem:
- What is a page? A markdown file with metadata and content.
- What is a template? A function from data to HTML.
- What is a site? A directed graph of pages with shared chrome.
That's it. Everything else is optimization.
Thermite's Approach
Thermite does exactly what's needed:
- Parse frontmatter (YAML between
---fences) - Convert markdown to HTML (pulldown-cmark handles the spec)
- Apply templates (Tera, with inheritance)
- Copy static assets
- Write files
No plugin system. No theme marketplace. No build hooks. If you need those, you know enough to add them.
The Tradeoff
Is Thermite better than Zola? No. Zola is excellent and battle-tested.
Is Thermite mine? Yes. And that means I understand every line, every decision, every tradeoff. When something breaks, I know where to look.
That's worth something.