Welcome to the Djereo docs
djereo
- a Django project template with opinionated tooling.
Built on top of the pycliche template.
Features
Projects created using djereo
include:
- A Django web application, configured via a
pyproject.toml
. - Dependencies managed via
uv
, using auv.lock
file for reproducible builds. - Dependencies managed via
uv
, using auv.lock
file for reproducible builds. - An implementation of the 'custom User + UserProfile' pattern, tied together with a
django-allauth
integration. - Optional vendorised
htmx
with sensible defaults for the frontend. - Simple configuration to enhance your logs with
structlog
. - Sensible defaults to use a
postgres
database from the start. - Ready-to-use dev tools: Django Debug Toolbar,
django-browser-reload
, runserver logs formatted usingrich
,structlog
in production. - IPython as the default shell.
- Out-of-the-box unit test suite & code coverage reporting.
pre-commit
hooks to lint & format code, and run SAST.- A
justfile
to usejust
as a task runner for common jobs. - Lean containerisation to quickly deploy a project to hosted environments.
- Settings to score A+ on securityheaders.com, for peace of mind.
- ...and more!
Optionally, for projects intended to be hosted on GitHub, also include:
- GitHub Actions to:
- Automate cutting releases via
Release Please
. - Run
pre-commit
hooks andpytest
as part of a Continuous Integration pipeline.
- Automate cutting releases via
- A
dependabot
configuration to keep Python packages & GitHub Actions up to date.
If djereo
sounds like a good foundation for your next project, explore the full list of features
or get started with the instructions on the Quickstart page.
Starting a Python project? Try pycliche, the base
djereo is built on, as your Python project template.