There is a somewhat similar system called Lektor, originally written by Armin Ronacher (of Flask/Jinja fame): https://www.getlektor.com/ You define your models, then start the local devserver to add entries for the models. In the end, it stores the data in the filesystem and outputs static HTML.