djux
djux is a CLI and registry for adding production-ready Django app templates to a project in one command. It handles the repetitive setup work: app files, Django settings, URL wiring, pip dependencies, and migrations.
pip install djux
djux new myproject
cd myproject
djux add auth
Think of it as a Django app installer where the installed code is copied into your project so you can own it, edit it, and ship it like normal Django code.
Vision
Djux aims to make reusable Django app templates easier to discover, install, inspect, and customize. The project is intentionally open to community feedback: the registry should grow around apps Django developers actually want, with a safe update story for vendored app code.
Current focus:
- Core app templates such as
auth,users,api-keys, andfiles. - AI-ready templates such as
ai-models,ai-prompts,ai-chat,ai-usage, andai-rag. - A safer update workflow for copied app code:
djux outdatedanddjux update <app>.
See APP_ROADMAP.md for the full roadmap.
Installation
Requires Python 3.10+.
pip install djux
Verify:
djux --version
Quick start
# 1. Create a new project
djux new myproject
cd myproject
# 2. Set up your environment
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env
# 3. Run initial migrations and start the server
python manage.py migrate
python manage.py runserver
# 4. Add apps
djux add auth
See docs/getting-started.md for a full walkthrough.
Available apps
| Name | Description | Tags |
|---|---|---|
auth |
JWT authentication: register, login, logout, refresh, me | auth jwt api |
users |
User profiles, avatars, preferences | planned |
api-keys |
API keys, scopes, rotation, revocation | planned |
ai-chat |
Basic chat API with conversation history | planned ai |
ai-models |
Provider/model registry and model selection | planned ai |
djux list
How it works
djux add <app> currently:
- Looks up the app in the registry.
- Downloads and extracts the app zip from GitHub.
- Validates the
djux.jsonmanifest. - Copies the
app/folder into your project'sapps/directory. - Patches
config/settings.pywithINSTALLED_APPSentries and settings blocks. - Patches
config/urls.pywith the route include. - Runs
pip installfor declared dependencies. - Runs
python manage.py migrateif the app has migrations. - Records the installed app in
djux.project.json.
Installed apps are vendored into the project. That means developers fully own the copied code after install.
Project layout
myproject/
|-- config/
| |-- settings.py # djux patches INSTALLED_APPS here
| `-- urls.py # djux adds URL includes here
|-- apps/ # all Django apps land here
|-- templates/
|-- static/
|-- manage.py
|-- djux.project.json # tracks installed apps
`-- requirements.txt
Documentation
| Document | Contents |
|---|---|
| Getting started | Install, scaffold, first app, what changed |
| CLI reference | Commands, options, errors |
| Creating apps | Build and publish a djux app |
| Manifest spec | djux.json contract and versioning rules |
| App conventions | Naming, layout, settings, migrations |
| Update design | Planned djux outdated and djux update <app> flow |
| Smoke test checklist | Quality checklist for official apps |
| Registry | Registry format, caching, custom registries |
Repositories
| Repo | Purpose |
|---|---|
| djuxhq/djux | CLI and project template |
| djuxhq/djux-registry | Registry index |
| djuxhq/djux-app-auth | Official auth app |
Contributing
Contributors and testers are welcome. Useful ways to help:
- Build official app templates.
- Test Djux in real Django projects.
- Improve the CLI and update workflow.
- Review app manifests and registry entries.
- Improve documentation.
Start with CONTRIBUTING.md, then check the roadmap and open issues.
License
MIT
Metadata
Release files for djux 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| djux-0.1.0.tar.gz | 17.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| djux-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 35.9 kB
Release files / djux-0.1.0.tar.gz
| Download URL | djux-0.1.0.tar.gz |
|---|---|
| Size | 17.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b2dbc0b851953b17e1d2242ad18a238d673a16d467b219a839cdfb3f108b1844
|
|
BLAKE2b-256 checksum How to use checksums |
c4ecfadf79ceebe32335ea8d5235a92715a7c77249c9cabf3cef8dc1dcef4763
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.
Transparency logRelease files / djux-0.1.0-py3-none-any.whl
| Download URL | djux-0.1.0-py3-none-any.whl |
|---|---|
| Size | 18.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cb7bcaafaaecd7c0b3b2f6a2f56b85a5233177a336673824d069b5652cfc3bf2
|
|
BLAKE2b-256 checksum How to use checksums |
800cafb3e808c0f1f3d995e8f861cf5a506f2290e4c35238312e605a4e61d00d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.
Transparency log