This project is very much pre-alpha
Picata is a CMS & blog application I forked off from my personal website. At the
moment it's effectively a ton of pre-made Wagtail "stuff"
(models, views, templatetags, middleware, hooks, etc.), made generic enough that
you can pip install
the package, add it to your INSTALLED_APPS
, and have a
CMS/blog up-and-running without having to spend weeks or months tailoring Wagtail
to your needs.
It's still under heavy development, with most documentation and a project template pending but - if you're already working with Wagtail - the source provides many working solutions to common problems. The repo for the aforementioned personal website lives on GitHub, and demonstrates a working implementation of this package (requiring, in fact, only this package as a dependency).
- Wagtail (on Django) as the CMS & web frameworks
- Runs on PostgreSQL; loaded with scripts for managing the database lifecycle and snapshots
- Tailwind CSS in Sass for front-end styling
- lxml is used for fast HTML processing in a middleware layer
Everything's written in very modern Python (circa 2025), with agressive linting and type-checking thanks to mypy, Pydantic/Pyright, and Ruff. Picata uses Django Debug Toolbar, runserver_plus, and iPython for development workflows. The project itself uses pre-commit extensively, with 16 hooks to keep everything neat and tidy.
All front-end code is written in TypeScript, with React set up and ready-to-go in the Webpack pipeline, if you're into that kind of thing.
- Uses UV and pyproject.toml exclusively for Python project management
- Just as a task runner, with over 60 recipes (at last count)
- OpenTofu (a fork of Terraform) and cloud-init for all DevOps & rapid deployment
- Docker and Docker Compose for local development