← projects

Static Site Generator

A minimal SSG in Python that compiles Markdown and Jinja templates into a static site. No config files, no plugins — just folders and files.

Oct 5, 2024

Started because I wanted to understand how Jekyll-style generators actually work. The core idea: walk a directory tree, render every .md file with Jinja, write the result next to the source. No magic, no config.

Nov 12, 2024

Added template inheritance. You can now have a base.html with {% block content %} and any page can extend it. Took longer than expected because Jinja’s environment needs careful scoping when you render multiple files in a single run.

Dec 20, 2024

Done. Generates this site’s predecessor in under 200ms for ~30 pages. The whole thing is ~400 lines of Python. Probably won’t maintain it — but I understand SSGs now, which was the point.

g →   h home   b blog   p projects
tip — press g then h, b, or p to navigate