djazz-cli
djazz-cli is a Django command-line tool that extends and enhances Django's built-in management commands. It provides a simpler, more intuitive interface through the dj command.
Features
- Simplified project creation with template support
- Enhanced app creation with better defaults
- Shorter, more intuitive command syntax
- Helpful next-step guidance after commands
- Default templates with common configurations
Installation
Install using pip:
pip install djazz-cli
Usage
Creating a New Project
# Basic project creation (in current directory)
dj startproject myproject
# Create project with a specific template
dj startproject myproject -t custom_template
# or
dj startproject myproject --template custom_template
# Create project in a specific directory
dj startproject myproject -t custom_template -p /path/to/directory
# or
dj startproject myproject --template custom_template --path /path/to/directory
Creating a New App
# Basic app creation
dj startapp myapp
# Create app with a specific template
dj startapp myapp -t custom_template
# or
dj startapp myapp --template custom_template
# Create app in a specific directory
dj startapp myapp -t custom_template -p /path/to/directory
# or
dj startapp myapp --template custom_template --path /path/to/directory
Listing Available Templates
# List all templates
dj list-templates
# List only project templates
dj list-templates project
# List only app templates
dj list-templates app
Templates
Project Templates
default: Enhanced version of Django's default project templatewagtail: Wagtail CMS project template with pre-configured settings
App Templates
default: Extended app template with additional files (urls.py, etc.)
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Development
Setting Up Development Environment
# Clone the repository
git clone https://github.com/djazzcc/cli.git
cd cli
# Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate # On Unix/macOS
# or
.\.venv\Scripts\activate # On Windows
# Install development dependencies
uv pip install -e .
Local Testing
# Create a sandbox test environment
mkdir -p sandbox/test1
cd sandbox/test1
# Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate # On Unix/macOS
# or
.\.venv\Scripts\activate # On Windows
# Install the package in editable mode (from project root)
cd ../.. # Go back to project root
uv pip install -e .
# Verify installation
uv pip list | grep djazz-cli
# Test the CLI
cd sandbox/test1
dj startproject myproject
Project Structure
cli/
├── djazz_cli/
│ ├── __init__.py
│ ├── main.py
│ └── templates/
│ ├── app_templates/
│ │ └── default/
│ └── project_templates/
│ └── default/
├── sandbox/ # For local testing (git ignored)
├── pyproject.toml
├── README.md
└── .gitignore
Building the Package
# Build both wheel and sdist
uv build
# The built packages will be in the dist/ directory
ls dist/
Metadata
Release files for djazz-cli 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| djazz_cli-0.1.3.tar.gz | 18.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| djazz_cli-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 47.2 kB
Release files / djazz_cli-0.1.3.tar.gz
| Download URL | djazz_cli-0.1.3.tar.gz |
|---|---|
| Size | 18.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b65355062f0129ce39048cbd24de307f6908bcccfe861fdbbd3fed1c8d740323
|
|
BLAKE2b-256 checksum How to use checksums |
c9b5f515dfdac1d8e638e2d97b35b602584e558bd4b4f617018cd3c1a89db140
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.32.3
|
Release files / djazz_cli-0.1.3-py3-none-any.whl
| Download URL | djazz_cli-0.1.3-py3-none-any.whl |
|---|---|
| Size | 28.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cb3ddc2c5891b2d03b7e99ef0ab86f1fd1a28b937f85ad10f40fc985f46fe14a
|
|
BLAKE2b-256 checksum How to use checksums |
6b55ab4c4244df67f97cd437d9d2e14f9eb4c547a2bc983b20e389f7e1446ead
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.32.3
|