pip install cookiecutter
cookiecutter git@github.com:makimo/django-template.git
git clone git@github.com:makimo/django-template.git # to one directory
cookiecutter [path to local directory]/django-template/ # to another
[ make changes + test ]
[ apply changes in template repository ]
[ commit changes ]
All of the project files are NOT in the base directory. They are in the
{{ cookiecutter.project_slug }} directory. Top-level directory is used
for cookiecutter files and repository settings.
Use test-env.py to automatically test template generation and Docker setup:
./test-env.py "Test Project" # Generate, test, and clean up
./test-env.py "Test" --no-remove # Keep generated project after testing
./test-env.py "Test" -f # Run Docker in foreground for manual testing
./test-env.py "Test" --clean # Clean up existing test project
The script:
- Checks prerequisites (Python, cookiecutter, Docker)
- Generates a project from the template
- Starts Docker services and waits for readiness
- Runs validation checks (file structure, template substitution, Django check)
- Cleans up all artifacts (containers, volumes, project directory)
assets/
├── app.js
├── app.scss
├── components/
│ ├── hello_world.vue
│ ├── hello_world_mount.js
│ └── ... [.vue/.js]
├── images/
│ └── ... [.png/.jpg]
├── scripts/
│ └── ... [.js]
├── styles/
│ └── ... [.css/.scss]
└── vendor/
└── ... [.js]
Application code-base entry point. Loads application dependencies such as
Bootstrap JS, scripts in scripts/, and app.scss.
Main entry-point for application-wide styles. Imports Bootstrap SCSS and
files in styles/.
Vue 3 single-file components and their mount scripts.
Vanilla JavaScript front-end scripts and shared utilities.
Application-wide styles divided into logical components.
Vendor-specific scripts and initialization.
RSBuild compiles assets with content hashing for cache busting. For each entry point, RSBuild generates:
{entry}.[hash].js- JavaScript bundle{entry}.[hash].css- CSS bundle (if entry imports styles){entry}-js-tags.html- HTML script tags for Django templates{entry}-css-tags.html- HTML link tags for Django templates
Entry points are defined in rsbuild.config.mjs. Default entries:
app- Main application bundlehello_world_mount- Vue component example
Report all issues under this repository Issues page.