Installation Modes
Choose The Smallest Install That Matches The Job
Use codex-django in one of three practical modes:
- Runtime library mode for projects that only need reusable Django modules.
- Scaffold mode for developers generating or extending a Codex-shaped project with
codex-django-cli. - Full contributor mode for people changing the library itself.
Runtime Library Mode
Install only the package and the extras your Django project actually uses:
pip install codex-django
pip install "codex-django[cli]"
pip install "codex-django[dev]"
This mode is for teams consuming the runtime modules such as core, system, booking, notifications, and cabinet.
Scaffold Mode
Use the companion CLI package when you want to generate a new project or add feature scaffolds to an existing one:
pip install "codex-django[cli]"
# or: pip install codex-django-cli
codex-django init myproject
codex-django add-client-cabinet --project myproject
codex-django add-booking --project myproject
codex-django add-notifications --app system --project myproject
The CLI is no longer part of the runtime distribution.
Treat it as project-construction tooling that depends on codex-django, not as business runtime code bundled into the same package.
Contributor Mode
When you are changing codex-django itself, sync the full development environment:
uv sync --extra dev
uv run pytest
uv run mypy src/
uv run pre-commit run --all-files
uv build --no-sources
Production Guidance
- Put generated project code into your application repository.
- Treat scaffolding as a build-time or developer-time activity.
- Keep production images focused on the dependencies your runtime application actually needs.
- Avoid making the deployed app container depend on interactive CLI flows unless that is an explicit operational choice.
Where To Go Next
- Read Runtime vs CLI for the boundary between reusable modules and project-construction tooling.
- Read Project Structure for the layout of a scaffolded project.
- Read Blueprint Workflow for how CLI commands map to generated output.