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.
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.
This documentation site is built with Uriel (along with various local Soju extensions.
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.
Tags:
This page was generated by Uriel with the following settings:
Page Details
| Resource | Path | Project File |
|---|---|---|
| Node | overview | nodes/overview |
| Template | default.html | templates/default.html |
| URL | /overview/ | public/overview/index.html |
Node Headers
| Header (Lowercase) | Value |
|---|---|
| title | Overview |
| breadcrumb-separator | » |
| canonical-url | https://documentation.uriel.foo |
| rss-description | Uriel Documentation |
| rss-image-height | 32 |
| rss-image-url | /favicon-32x32.png |
| rss-image-width | 32 |
| rss-max-entries | 50 |
| rss-title | Uriel Documentation |
| rss-url | /rss.xml |
| sitemap-max-entries | 10000 |
| sitemap-url | /sitemap.xml |
| tag-node | tag |
| template | default.html |
Node Timestamps
| Type | Value |
|---|---|
| Created | |
| Modified | 2026-06-10T23:06:48-04:00 |
Node Methods
| Method | Value |
|---|---|
| get_parent_node() | index |
| get_path() | overview |
| get_node_type() | file |
| get_url() | /overview/ |
| get_canonical_url() | https://documentation.uriel.foo/overview/ |
| get_name() | overview |
| get_display_name() | Overview |
| get_title() | Overview |
| get_escaped_title() | Overview |
| get_link() | <a href="/overview/">Overview</a> |
| get_canonical_link() | <a href="https://documentation.uriel.foo/overview/">Overview</a> |
| get_link_prefix() | <p> |
| get_link_suffix() | </p> |
| get_tags() | [] |
| get_dest_dir() | ./public/overview |
| get_dest_file() | ./public/overview/index.html |
| get_breadcrumb_separator() | » |