Skip to main content

A lightweight CLI tool that helps you create Django projects and apps with a clean, scalable architectureโ€”without boilerplate or repetitive setup.

Project description

django-structurator

๐Ÿš€ django-structurator is a lightweight CLI tool that helps you create Django projects and apps with a clean, scalable architectureโ€”without boilerplate or repetitive setup.

No dependencies. No fluff. Just Python input() for fast, interactive prompts.


โœ… What It Does

  • ๐Ÿ“‚ Create Django projects with a scalable folder structure.
  • โš™๏ธ Quickly generate Django apps with optional files (forms, signals, validators, API support, etc.).
  • ๐Ÿ”ง Customize project setup with advanced features like:
    • Django Rest Framework (DRF)
    • Django Debug Toolbar
    • Celery
    • Redis cache
    • SMTP email config
    • Jazzmin admin
  • ๐ŸŽ›๏ธ Auto-generate essential files like .env.example and .gitignore.

๐Ÿš€ Installation

pip install django-structurator

โšก Usage

Create a Django Project

django-str startproject

Follow the prompts to:

  • Name your project
  • Choose a database: SQLite, PostgreSQL, MySQL
  • Pick .env configuration (django-environ, python-dotenv)
  • Add optional features (DRF, Celery, Redis, Debug Toolbar, etc.)

โœ… Example Output:

>> django-str startproject
Enter project name: test
Enter project path (default: E:\Django\test): 

Select database
1. postgresql
2. mysql
3. sqlite
Select an option (1-3): 3

๐Ÿ”ง Optional Project Features:
Do you want to use Django Debug Toolbar? (y/n) [default: n]: y
....

๐Ÿš€ Project Configuration Summary:
========================================
project_name: test
project_path: E:\Django\test
database: sqlite
....
========================================

Do you want to proceed with project creation? (y/n) [default: y]: y
...
Django project 'test' created successfully at E:\Django\test

Create a Django App

django-str startapp

Follow the prompts to:

  • Name your app
  • Add files like: forms.py, signals.py, validators.py
  • Include optional features like:
    • Template tags/filters
    • Static and templates folders
    • API folder structure (DRF)

โœ… Example Output:

>> django-str startapp    
Enter App name: main

๐Ÿ”ง Optional App Features:
Do you want to use validators.py? (y/n) [default: n]: y
....

๐Ÿš€ App Configuration Summary:
app_dir: ...\test\src\apps
app_name: main
app_path: ...\test\src\apps\main
use_validators_py: True
....

Do you want to proceed with app creation? (y/n) [default: y]: y

๐ŸŽ‰ Django app 'main' created successfully!

๐Ÿ—๏ธ Example Project Structure

my_project/
โ”œโ”€โ”€ docs/
โ”œโ”€โ”€ local_db/
โ”œโ”€โ”€ requirements/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ apps/
โ”‚   โ”‚   โ”œโ”€โ”€ blog/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ api/v1/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ migrations/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ templatetags/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ admin.py
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ apps.py
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ forms.py
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ models.py
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ signals.py
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ tasks.py
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ validators.py
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ views.py
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ common/
โ”‚   โ”œโ”€โ”€ config/
โ”‚   โ”‚   โ”œโ”€โ”€ settings/
โ”‚   โ”‚   โ”œโ”€โ”€ urls.py
โ”‚   โ”‚   โ”œโ”€โ”€ wsgi.py
โ”‚   โ”‚   โ””โ”€โ”€ asgi.py
โ”‚   โ”œโ”€โ”€ media/
โ”‚   โ”œโ”€โ”€ static/
โ”‚   โ”œโ”€โ”€ templates/
โ”‚   โ””โ”€โ”€ manage.py
โ””โ”€โ”€ .gitignore

โœ… Requirements

  • Python 3.8+
  • Django 3.2+

๐Ÿ“„ License

MIT License - See the LICENSE


๐Ÿ”— Links


Why Use django-structurator?

๐Ÿ”ฅ Save time, avoid repetitive setup
๐Ÿงน Clean, maintainable architecture
โšก Lightweight, no external dependencies
๐Ÿ› ๏ธ Customizable project and app scaffolding

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_structurator-1.1.1.tar.gz (92.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_structurator-1.1.1-py3-none-any.whl (107.6 kB view details)

Uploaded Python 3

File details

Details for the file django_structurator-1.1.1.tar.gz.

File metadata

  • Download URL: django_structurator-1.1.1.tar.gz
  • Upload date:
  • Size: 92.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.4

File hashes

Hashes for django_structurator-1.1.1.tar.gz
Algorithm Hash digest
SHA256 783d78cbe098450327b15945497322a177acbee3ccfa986a090325d2bc17bd75
MD5 0dbce4e95744d5627ae0bc6c07dbd6ab
BLAKE2b-256 c90345df185bf98a7a369fb48bbfac6d8e8b04c01523fecdc47951784c7a4851

See more details on using hashes here.

File details

Details for the file django_structurator-1.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for django_structurator-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 522d53fc6edcfad62b19f7404cb424f955ec00e59279c437092358cc6f9bb95e
MD5 0ea322aa7426529d915f3d3d4602d218
BLAKE2b-256 dc8c7d95422ad65dfbcc9279a8a40c833832d4f2fb8def59415b23fed8f44ffc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page