Uriel is a minimalistic, stable, feature complete static site generator,
written in Python.
Named for the archangel Uriel in the novel
Unsong, whose job was to perform the
fantastic and mundane work necessary to keep the world functioning.
Built to last for years without requiring any maintenance. It is feature
complete, and only depends on Python, with no third-party module
dependencies. That means that it won't break unexpectedly years from now,
after you've built a site around it.
As long as you can still get a working copy of python3, your site will
still build the same way in the future.
Generates a static website you can host on pretty much any web server
Minimalistic philosophy and approach
Useful error messages
Built-in tag index system
Built-in breadcrumb navigation support
Flat URL support to make some or all content nodes top-level URLs
Inheritance and override system for content node settings and values
Optional dynamic naming of static files (to force browser cache misses
for CSS and JavaScript files when content changes)
RSS feed generator, with ability to include or exclude content nodes
from feed
sitemap.xml generator, with ability to include or exclude content
nodes from sitemap
Minimalistic robots.txt generator
Ability to include unmodified static files
Ability to selectively override dynamically generated files with
static files when necessary
Simple but flexible templating system
Supports a variety of useful built-in node/template replacement
parameters
Supports arbitrary user-defined Python code in node/template
replacement parameters
Supports arbitrary user-defined Python code in lifecycle handlers
during generation
Ability to generate static pages dynamically from user-defined Python
code
Implemented in pure Python 3, using only the built-in library modules
Stable platform to build on
Feature complete
Minimal dependencies, pure Python 3 with no third-party modules
GPL version 3 license
Why another static site generator? Why this one? Because I wanted an
extremely stable platform to build my own web sites on, that I would be
able to maintain and understand many years into the future. For this
project, simplicity and stability is prioritized over new features.
If you prefer something with a maximal feature set, and all the latest
features, this probably won't be for you.
On the other hand, this system is so simple that it will pretty much keep
working indefinitely, without any ongoing maintenance. For me, this is the
main appeal.