Skip to main content

🚀 Django Kickstart

Scaffold production-ready Django projects in seconds.

Skip the boilerplate. Start building.

PyPI version License: MIT Python 3.8+


✨ Features

  • Two project types: MVP (traditional Django with templates) or API (Django REST Framework)
  • View style choice: Function-Based Views (FBV) or Class-Based Views (CBV)
  • Database options: SQLite (dev) or PostgreSQL (production)
  • Docker support: Optional --docker flag generates a production-ready Dockerfile, docker-compose.yml, and entrypoint.sh
  • Auto virtual environment: Creates a venv and installs dependencies automatically
  • Production-ready settings: Security hardened, environment variables via python-decouple
  • Admin panel: Enabled and configured out of the box
  • URL routing: Fully wired with app URLs included
  • Example model: Item model with admin registration, tests, and views
  • Beautiful starter templates: Modern CSS with responsive layout (MVP only)
  • DRF browsable API: Auto-configured with pagination and permissions (API only)

📦 Installation

pip install django-kickstartx

🚀 Quick Start

Interactive mode (guided prompts)

django-kickstart create myproject

Flag mode (one-liner)

# MVP with function-based views + SQLite
django-kickstart create myproject --type mvp --views fbv --db sqlite

# REST API with class-based views + PostgreSQL
django-kickstart create myproject --type api --views cbv --db postgresql

# Any project with Docker support
django-kickstart create myproject --type api --views fbv --db postgresql --docker

After creating your project

A virtual environment is created automatically with all dependencies installed.

cd myproject
# Activate the virtual environment
# Windows:
venv\Scripts\activate
# macOS/Linux:
source venv/bin/activate

cp .env.example .env
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

Tip: Use --no-venv to skip automatic virtual environment creation.

With Docker

If you used --docker, skip the venv entirely and use Compose:

cd myproject
cp .env.example .env
docker-compose up --build

Once the containers are running:

docker-compose exec web python manage.py createsuperuser

Note: For PostgreSQL projects, the web container waits for the database to pass its health check before running migrations automatically.


🔧 Options

Flag Choices Default Description
--type mvp, api interactive MVP (templates) or API (DRF)
--views fbv, cbv interactive Function or class-based views
--db sqlite, postgresql interactive Database backend
--no-venv — false Skip automatic virtual environment creation
--docker — false Add Docker configuration (Dockerfile, docker-compose.yml, .dockerignore, and entrypoint.sh for PostgreSQL)

📁 Generated Structure

MVP Project

myproject/
├── venv/                       # Auto-created virtual environment
├── manage.py
├── requirements.txt
├── .env.example
├── .gitignore
├── myproject/
│   ├── settings.py         # Security, DB, static/media config
│   ├── urls.py             # Admin + core app wired
│   ├── wsgi.py
│   └── asgi.py
├── core/
│   ├── admin.py            # Item model registered
│   ├── models.py           # Example Item model
│   ├── views.py            # FBV or CBV
│   ├── urls.py
│   ├── forms.py            # ModelForm
│   ├── tests.py
│   └── templates/core/
│       ├── base.html
│       ├── home.html
│       └── about.html
└── static/css/style.css

API (DRF) Project

myproject/
├── venv/                       # Auto-created virtual environment
├── manage.py
├── requirements.txt
├── .env.example
├── .gitignore
├── myproject/
│   ├── settings.py         # DRF + CORS config included
│   ├── urls.py             # Admin + /api/ router
│   ├── wsgi.py
│   └── asgi.py
└── core/
    ├── admin.py
    ├── models.py
    ├── serializers.py       # DRF ModelSerializer
    ├── views.py             # @api_view or ModelViewSet
    ├── urls.py              # DRF Router or explicit paths
    └── tests.py

With --docker (additional files)

myproject/
├── Dockerfile              # python:3.12-slim-bookworm, no-cache pip install
├── docker-compose.yml      # web service (+ db service for PostgreSQL)
├── .dockerignore
└── entrypoint.sh           # PostgreSQL only — waits for DB, then migrates

🤔 What's Included?

Settings Highlights

  • SECRET_KEY loaded from .env
  • DEBUG and ALLOWED_HOSTS from environment
  • Pre-configured password validators
  • Static & media file configuration
  • Production security settings (commented, ready to uncomment)
  • Login/logout redirect URLs

MVP Extras

  • Django HTML templates with {% block %} structure
  • Clean starter CSS with responsive grid
  • ModelForm with widget customization

API Extras

  • Django REST Framework with pagination
  • django-cors-headers configured
  • django-filter included in requirements
  • DRF browsable API at /api/

📄 License

MIT © 2026


🤝 Contributing

  1. Fork the repo
  2. Create a feature branch: git checkout -b feature/my-feature
  3. Commit: git commit -m 'Add my feature'
  4. Push: git push origin feature/my-feature
  5. Open a Pull Request

🌟 Star this project

If Django Kickstart saved you time, give it a ⭐ on GitHub!

Metadata

Release files for django-kickstartx 1.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-kickstartx 1.1.3
File Size Uploaded
django_kickstartx-1.1.3.tar.gz 23.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-kickstartx 1.1.3
File Interpreter ABI Platform
django_kickstartx-1.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 53.5 kB

Release files / django_kickstartx-1.1.3.tar.gz

Download URL django_kickstartx-1.1.3.tar.gz
Size 23.5 kB
Tags Source
SHA-256 checksum
How to use checksums
dff6f438293d1a1eeb87e3780f5a8758e9b0695e5b04d0e326a560f17bb15d04
BLAKE2b-256 checksum
How to use checksums
2b87f47a581a7033fe6e01e2569151c352e2590d53c62f692916bda6b26f6235
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.5

Release files / django_kickstartx-1.1.3-py3-none-any.whl

Download URL django_kickstartx-1.1.3-py3-none-any.whl
Size 30.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
78d646935713bc707006eca8b2be32936a5c3155254cf6c05973fe8b397b15b3
BLAKE2b-256 checksum
How to use checksums
ab58b4d674d8c4c85ec13eb649c5de126eb0e4fd8844130f54dcf8588f4aa1ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.5

Release history Release notifications | RSS feed

This release

1.1.3 This release

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.7

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page