Since the world needs more static site generators (it doesn't), I built one. It's not "all things for all people". Not a 747, just a tiny ultralight to automate some things.
Its goals are simple:
- Maintain a list of finished posts & unfinished ideas
- Render finished posts into an HTML template
- Do as little else as possible
The script is altogether โ130 lines of Python code, and probably won't ever be much larger (hopefully I'll cut it down some). I chose markdown formatting, and Jinja2 for templating, and S3 for deployment.
I'm calling it unn
because naming things is hard.
Invoked from the command line, it knows how to do 3 things:
unn idea post-slug
- start a new draft called "post-slug"unn build
- convert "published" files into an HTML siteunn deploy
- deploy the site to S3 (& build it first)
To "publish" a post, I simply move the file from /ideas
into /posts
, and run unn deploy
It's not perfect, but it does the job. Feel free to open a PR for improvements.
unn
currently powers juanpatten.com
- bundle as python package w/ binary