Overview¶
django-angular3 (djng) is the Python half of a two-package toolchain for
contract-first Django REST Framework and Angular Material integration.
What it does¶
Validates project configuration, OpenAPI inputs, and UI definition files.
Emits deterministic build plans consumed by
build_app.Wraps Angular CLI commands through frozen
ng_*management commands.Hosts the SKILL and TOOL contracts that orchestrate Angular workspace generation via
angular-django2(ngdj) schematics.
Automation naming layers¶
The toolchain uses four distinct naming layers (see doc/ARCHITECTURE.md §2.23
for the authoritative definition):
Layer |
Example |
Stability |
|---|---|---|
CLI wrapper commands |
|
Frozen — never renamed |
TOOL contracts |
|
Stable API |
SKILL names |
|
Stable API |
Concern keys |
|
Internal |
Installation¶
pip install django-angular3
# With YAML support:
pip install django-angular3[yaml]
Add to INSTALLED_APPS to enable the ng_* management commands:
INSTALLED_APPS = [
...
"django_angular3",
]
Core commands¶
django-admin validate-project django-angular3.json
django-admin build django-angular3.json --dry-run
django-admin build_app django-angular3.json --dry-run
django-admin ng_workspace django-angular3.json --dry-run
django-admin ng_openapi_gen django-angular3.json --dry-run