π 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 extra dependencies. No bloated templates. Just a clean, prompt-driven workflow.
forms
, signals
, validators
, tasks
, and more..env.example
, .gitignore
, requirements/
, and more.pip install django-structuratorπ Create a New Django Project
Interactive CLI will ask:
.env
management: django-environ
/ python-dotenv
CLI will prompt for:
forms.py
, signals.py
, validators.py
test/
β
βββ docs/ # Documentation files
β βββ ARCHITECTURE.md # Project folder architecture guide
β βββ CHANGELOG.md # Change log for the project
β βββ README.md # Main documentation file
β
βββ local_db/ # Local SQLite database for development
β βββ db.sqlite3
β
βββ logs/ # Every level Log files will be here
β βββ critical.log
β βββ debug.log
β βββ error.log
β βββ info.log
β βββ warning.log
|
βββ requirements/ # Dependency management
β βββ base.txt # Core dependencies
β βββ development.txt # Development-specific dependencies
β βββ production.txt # Production-specific dependencies
β βββ test.txt # Testing dependencies
β
βββ src/ # Main source code folder
β βββ apps/ # All Django apps
| | βββ app-1/ # Example Django app
| | β β
| | β βββ api/ # API for app-1
| | β β βββ v1/ # Version 1 of the API
| | β β β βββ __init__.py
| | β β β βββ serializers.py # Serializers for API data
| | β β β βββ urls.py # API URL patterns
| | β β β βββ views.py # API views
| | β β βββ __init__.py
| | β β
| | β βββ migrations/ # Database migrations
| | β β βββ __init__.py
| | β β
| | β βββ templatetags/ # Custom template tags and filters
| | β β βββ __init__.py
| | β β βββ example_filter.py # Custom filter example
| | β β βββ example_tag.py # Custom tag example
| | β β
| | β βββ __init__.py
| | β βββ admin.py # Admin site configuration
| | β βββ apps.py # App configuration
| | β βββ forms.py # App-specific forms (optional)
| | β βββ models.py # App models
| | β βββ signals.py # Signal handlers (optional)
| | β βββ tasks.py # Celery tasks (optional)
| | β βββ tests.py # Unit tests
| | β βββ urls.py # App-specific URL patterns
| | β βββ validators.py # Custom validators (optional)
| | β βββ views.py # App views
| | β
| | βββ app-2/ # Another app
| | βββ app-3/
| | βββ ...
| | βββ app-4/
β β
β βββ common/ # Shared utilities, constants, and helpers
β β βββ __init__.py
β β βββ constants.py # Commonly used constants
β β βββ helpers.py # Utility functions
β β
β βββ config/ # Project configuration
β β βββ settings/ # Environment-specific settings
β β β βββ __init__.py
β β β βββ base.py # Base settings
β β β βββ development.py # Development environment settings
β β β βββ production.py # Production environment settings
β β βββ __init__.py
β β βββ .env # Environment variables (in config directory)
β β βββ .env.example # Example env file (in config directory)
β β βββ asgi.py # ASGI configuration
β β βββ celery.py # Celery configuration file if used
β β βββ urls.py # URL configuration
β β βββ wsgi.py # WSGI configuration
β β
β βββ media/ # Uploaded media files
β β
β βββ static/ # Static files
β β βββ css/ # CSS files
β β βββ js/ # JavaScript files
β β βββ images/ # Image files
β β βββ favicon.ico # Favicon
β β
β βββ templates/ # HTML templates
β β βββ base.html # Base HTML template
β β βββ index.html # Default landing page template
β β
β βββ manage.py # Django's management script
β
βββ .gitignore # Git ignore file
π₯ Save time and skip repetitive setup
π§Ό Enforce consistency across teams
β‘ Fast, interactive, zero-bloat generator
MIT License - See the LICENSE
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4