A UV-installable CLI for creating Wagtail CMS projects with a repeatable codebase layout. The standard layout includes UV and Docker development, SQLite (with PostgreSQL and MySQL options), formatting tools, and pre-commit hooks.
With UV installed, install from a local checkout (requires Python 3.14 or later):
uv tool install /path/to/wagtail-generateRun from outside the generator checkout:
wagtail-generate start mysite --site-name "My Site" --site-directory .
cd my_site
make devMake is required for make dev. Open http://localhost:8000. Follow the generated
project's README.md for administrator setup, Docker, databases, and checks.
Each site has its own Python environment and lockfile.
Run wagtail-generate start --help for all flags and defaults. Running
wagtail-generate start mysite prompts for a site name and source location.
--site-name "My Site"sets the readable name and default folder (my_site). The positional name (mysite) determines the Python package.--directory PATHoverrides the destination, which must be missing or empty and outside the generator checkout.--site-directory .puts Wagtail code at the root;--site-directory srcuses a source subfolder. UV files andmanage.pyremain at the root.--database postgresqlor--database mysqlselects a server database; SQLite is the default. Server database development uses Docker Compose.--layout standardselects the current generator layout (the default).--template PATHsupplies a custom local Wagtail project template.
See Developer guide to develop the generator or try its playground.