Skip to main content

Modern Django Starter

PyPI version Python CI Docs

A CLI tool that generates Django 6.1 projects with HTMX, AlpineJS, TailwindCSS, and more — with optional Docker, PostgreSQL, DRF, Celery, Sentry, Stripe, and cloud integrations.

📚 Full documentation: mds.rianbarriga.com 📝 Release history: CHANGELOG.md

Installation

Requires Python 3.12+.

# uv (recommended)
uv tool install modern-django-starter

# pip
pip install modern-django-starter

Usage

modern-django-starter create my_project

To create a project somewhere else:

modern-django-starter create my_project --output-dir /path/to/projects

Project names must be valid Python identifiers because they become the Django package name.

Without extra flags, the CLI asks for your choices interactively:

Option Choices
Docker yes / no
PostgreSQL 15, 16, 17, 18
Cloud provider none, AWS, Azure, GCP, Render, Railway, PythonAnywhere, Fly.io, Dokku, Heroku
Storage provider local, AWS, GCP, Azure, Cloudflare R2
Email provider none, SendGrid, Mailgun, SES, Postmark
Async support yes / no
Django REST Framework yes / no
Celery yes / no
Sentry yes / no
Stripe yes / no
Frontend pipeline none, webpack, vite, parcel
CI tool none, GitHub Actions, GitLab CI, Travis, CircleCI

API-only projects

Pass --api-only to skip the frontend and generate a pure DRF backend:

modern-django-starter create my_api --api-only

Includes:

  • Django REST Framework
  • JWT auth (djangorestframework-simplejwt)
  • CORS (django-cors-headers)
  • API schema and docs (drf-spectacular)
  • Registration/auth endpoints (dj-rest-auth, django-allauth)

Generated project

  • Django 6.1
  • HTMX and AlpineJS
  • Django-allauth authentication
  • TailwindCSS and DaisyUI styling
  • Settings split into base, development, and production
  • Optional: Docker, PostgreSQL, DRF, Celery, Sentry, Stripe, CI workflow, frontend pipeline

Development

Prerequisites

  • Python 3.12+
  • uv
  • Node.js and npm (only needed if you test frontend pipeline generation)

Setup

git clone https://github.com/CasualEngineerZombie/modern-django-starter.git
cd modern-django-starter
uv sync

Checks

Run the same checks as CI:

uv run ruff check .
uv run ruff format --check .
uv run mypy
uv run pytest

CI runs lint, type checking, and tests on Python 3.12, 3.13, and 3.14.

Documentation

The docs site (mds.rianbarriga.com) is built with MkDocs Material and deployed to GitHub Pages by the docs.yml workflow on every push to main. Sources live in docs/. Preview locally with:

uv sync --group docs
uv run mkdocs serve

Contributing

Pull requests are welcome. Run the checks above before submitting.

License

MIT — see the LICENSE file.

Release files for modern-django-starter 0.3.10

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

Source distribution (sdist)

Source distribution for modern-django-starter 0.3.10
File Size Uploaded
modern_django_starter-0.3.10.tar.gz 56.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for modern-django-starter 0.3.10
File Interpreter ABI Platform
modern_django_starter-0.3.10-py3-none-any.whl Python 3 none any Details

Total release size: 108.5 kB

Release files / modern_django_starter-0.3.10.tar.gz

Download URL modern_django_starter-0.3.10.tar.gz
Size 56.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e70210556396b59c75f842fe91801cf6988dc026aa86a7bf2d1fc77e0854aba8
BLAKE2b-256 checksum
How to use checksums
1eec6d53957c8768ba1aecb335acd0fab5261dd97cf1bdb12c8739bb6a8aefa8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release files / modern_django_starter-0.3.10-py3-none-any.whl

Download URL modern_django_starter-0.3.10-py3-none-any.whl
Size 52.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8ca722dfc3cd31baf3f01a2e2473363255b97a9f0c39d5310d603970fd3744d9
BLAKE2b-256 checksum
How to use checksums
32036cf55dd90989257dbae5fbc7a77f8e9c1a65da2816e09fbbda58ed0355a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.11

2 release files

This release

0.3.10 This release

2 release files

0.3.9

2 release files

0.3.0

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.1.3

1 release file

0.1.2

2 release files

0.1.1

2 release files

0.1.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