Skip to main content

A starter kit to quickly scaffold Django projects.

Project description

   ____ ___  __  __      ____/ / (_)___ _____  ____ _____        _____/ /_____ ______/ /____  _____
  / __ `__ \/ / / /_____/ __  / / / __ `/ __ \/ __ `/ __ \______/ ___/ __/ __ `/ ___/ __/ _ \/ ___/
 / / / / / / /_/ /_____/ /_/ / / / /_/ / / / / /_/ / /_/ /_____(__  ) /_/ /_/ / /  / /_/  __/ /    
/_/ /_/ /_/\__,_/      \__,_/_/ /\__,_/_/ /_/\__, /\____/     /____/\__/\__,_/_/   \__/\___/_/     
         /____/           /___/            /____/

🛠️ my-django-starter

A command-line utility for scaffolding and launching Django projects with a complete, modular, and automated setup pipeline.

💻 System Architecture : OOP Design

🎥 Live Demo

🚀 Overview

my-django-starter is a developer-friendly tool that automates the initial setup of Django projects. It handles everything from virtual environment creation to Django installation, project scaffolding, app setup, settings configuration, and server execution — all in one seamless command-line flow.

📦 Features

  • 📁 Creates a new Django project and apps
  • ⚙️ Sets up virtual environments automatically
  • 🧪 Detects your OS and adjusts commands accordingly
  • 📝 Configures settings, media files, environment variables
  • 📄 Generates requirements.txt
  • 📄 Manages environement variables
  • 🧙 Renders a stylish home page template
  • 👤 Creates a superuser for the admin dashboard
  • 🚀 Launches the development server instantly

🔧 How It Works

The tool works through a step-based pipeline system:

Each setup task is a separate module:

  • Banner() – Displays a welcome banner
  • OSDetector() – Detects the operating system
  • VirtualEnvCreator() – Creates a Python virtual environment
  • DjangoInstaller() – Installs Django via pip
  • ProjectCreator() – Scaffolds a new Django project
  • AppCreator() – Adds one or more Django apps
  • SettingsModifier() – Updates project settings
  • EnvManager() – Creates and populates a .env file
  • RequirementsGenerator() – Freezes dependencies
  • HomePageRenderer() – Adds a responsive landing page
  • MediaFileHandler() – Configures media/static paths
  • MigrationManager() – Applies database migrations
  • AdminSetup() – Creates an admin superuser
  • ServerRunner() – Launches the Django development server

⚙️ Installation & Usage

For Linux/macOS:

$ pip install my-django-starter==0.1.6  # replace with actual version
$ mydjango

For Windows:

$ pip install my-django-starter==0.1.6  # replace with actual version
# Add mydjango.exe to PATH environment variable
$ mydjango

It will:

  1. Creates a new virtual environment
  2. Install Django
  3. Scaffold your project and apps
  4. Configure everything (settings, env, admin)
  5. Launch your Django server

📜 License

MIT License

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

my_django_starter-0.1.6.tar.gz (46.4 kB view details)

Uploaded Source

Built Distribution

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

my_django_starter-0.1.6-py3-none-any.whl (75.9 kB view details)

Uploaded Python 3

File details

Details for the file my_django_starter-0.1.6.tar.gz.

File metadata

  • Download URL: my_django_starter-0.1.6.tar.gz
  • Upload date:
  • Size: 46.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for my_django_starter-0.1.6.tar.gz
Algorithm Hash digest
SHA256 96fa17f27940f2fa28d3439a5b7143c59ee1e76707ee6d47d6ab06ccd89a22c6
MD5 fa196c780a1f80163efd39dfc7077575
BLAKE2b-256 474e75aaf406b2b9cffc11ade7d4ea746f291ad3a9c06c96a2eacdf7caa7896c

See more details on using hashes here.

File details

Details for the file my_django_starter-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for my_django_starter-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 e955f11ebf5f4c0ae3bbc53724a6e4bbc86a417bf209753ade552ac8c2faa509
MD5 9eb5dfef955b493fdf609cb6d99dd18a
BLAKE2b-256 1863ea5b5d159833a94fcf12159bff5c3f544cc4b13c8c9c2aba77421fe2aa8e

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