Rotuli static site compiler

A work in progress to become the most universal content processor.

.. image:: rotuliinuse.jpg :alt: people using rotuli :width: 99%

Figure 1: numerous rotuli have been used since the Roman Empire.

(Some fools claim that the term is "generator_" instead of compiler, but original content is generated by people, not software.)

.. _generator: https://www.staticgen.com/

Philosophy

A very pure and generic library, and a simple command line tool to pull and extrude content.

.. _rotulus: https://en.wikipedia.org/wiki/Rotulus

Rotuli is generic; it assumes nothing about your site. The content does not even need to be a website. Use it for a book if you like. Render PDFs if you prefer that format (when the template system supports that). Rotuli only provides rendering logic, metadata handling, page grouping and some template filters. The content does not know that it's being massaged.

Rotuli does not even have config files. Config files are evil because global variables are evil. Treat your pieces of data as individuals.

No template code is allowed in the source data, because data should be tool-agnostic. Handy shortcuts for images or code listings or page links or something? Sorry, no. Use a modern markup language and persistent urls.

Core features

The content group feature is simple, significant and powerful.

Implicit features

For example:

Why

.. _Rust: https://www.rust-lang.org/ .. _more unique than Rotulus: https://github.com/search?q=rotulus

Why not

The very generic and content agnostic business means that some compromises have to be done. For example:

TODO