I was considering using bash, some command line markdown transformer, and a makefile to transform my blog posts from markdown into HTML by wrapping them in an HTML template that just have the strings $TITLE, $BODY, and $DATE substituted. I think that would be a fun way to do this with zero C code. One of the hard parts was figuring out how to avoid too many nested data structures, like embedded title in the markdown files via front matter. But I figured out that if all you have is a title and it's a one-line string, you can just use the `head` and `tail` command line utils to extract either the title string or the markdown body depending on which operation you're in the middle of, and you can still just use bash (except for the markdown converter). I plan to use this on my blog[1], and maybe also to generate a blog index.<p>[1] <a href="https://sephware.com/blog/" rel="nofollow">https://sephware.com/blog/</a>
Despite having fewer features, this looks considerably less easy to use (and certainly less well documented!) than Hugo (<a href="https://gohugo.io/" rel="nofollow">https://gohugo.io/</a>). Which, being written in Go is probably much <i>easier</i> than this to compile across different platforms (unless you're using a really obscure platform). I can't see much reason to use this.
The best static site generator I've used is Hugo. Still haven't been tempted to fork it or modify any of the generating code. It has just enough helper functions to be useful. The theme system is really lovely too, with a ton of simple templates to work from. I don't use the built in web server, but it's great for local testing.<p>I highly recommend it for any text heavy sites.