Skip to main content

A CLI tool for generating Django 5.x projects with HTMX, AlpineJS, and more

Project description

Modern Django Starter 🚀

PyPI version PyPI Python Downloads

A CLI tool for generating Django 5.x projects with HTMX, AlpineJS, and more. Streamline your setup with customizable options for Docker, databases, cloud providers, and frontend pipelines. Build modern, reactive Django apps faster!

Installation

Install from PyPI:

pip install modern-django-starter

📦 PyPI Package: https://pypi.org/project/modern-django-starter/

Quick Start

Generate a new Django project:

modern-django-starter create my_awesome_project

Or with options:

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

API-Only Projects

Generate a Django REST API project (no frontend, no templates/static) with all the essentials:

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

Example:

modern-django-starter create my_api_project --api-only

This will generate a minimal, production-ready Django API backend with all the above features and no frontend code.

Features

  • Django 5.x
  • HTMX for dynamic HTML updates
  • AlpineJS for lightweight JavaScript interactions
  • Django-allauth for authentication
  • TailwindCSS and DaisyUI for styling
  • Docker support (optional)
  • PostgreSQL database
  • Cloud provider integration options
  • Email provider integration
  • Django Rest Framework (DRF) support
  • API-only mode: Generate a DRF-only backend with JWT, CORS, Spectacular, dj-rest-auth, and allauth
  • Frontend pipeline options
  • Celery for background task processing
  • Sentry for error tracking
  • CI tool integration options

Prerequisites

  • Python 3.8+
  • pip

Optional:

  • Node.js and npm (for frontend pipelines)
  • Docker (for containerized development)

Development Installation

If you want to contribute or install from source:

  1. Clone this repository:

    git clone https://github.com/CasualEngineerZombie/modern-django-starter.git
    cd modern-django-starter
    
  2. Install in development mode:

    pip install -e .
    

Usage

Generate a new Django project:

modern-django-starter create my_awesome_project

Or specify an output directory:

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

The CLI will guide you through configuration options interactively.

Configuration Options

  • Docker support
  • PostgreSQL version
  • Cloud provider (AWS, Azure, GCP, Render, Railway, PythonAnywhere, Flyio, Dokku, Heroku, or none)
  • Email provider
  • Asynchronous support
  • Django Rest Framework
  • API-only mode (--api-only): DRF, JWT, CORS, Spectacular, dj-rest-auth, allauth, no frontend
  • Frontend pipeline
  • Celery
  • Sentry
  • CI tools

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

modern-django-starter-0.2.3.tar.gz (35.6 kB view details)

Uploaded Source

Built Distribution

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

modern_django_starter-0.2.3-py3-none-any.whl (46.7 kB view details)

Uploaded Python 3

File details

Details for the file modern-django-starter-0.2.3.tar.gz.

File metadata

  • Download URL: modern-django-starter-0.2.3.tar.gz
  • Upload date:
  • Size: 35.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for modern-django-starter-0.2.3.tar.gz
Algorithm Hash digest
SHA256 7c442d7544034e46bca63d171da4f000af368b7308d4c0a63a9028f121d48310
MD5 b3074d383028c1de38599658a1569a4e
BLAKE2b-256 9eb4a53c49d0b3b2f46e0ebf4a9e51cef3eadd66f0f45021ac8843c463a8ab3d

See more details on using hashes here.

File details

Details for the file modern_django_starter-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for modern_django_starter-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9df17a97760f5245fee2d65fe3b3e833cac16e14d2806e7c779b6920d6b7a838
MD5 11dd9aa02193d9e31f8b4a4ccf6cad51
BLAKE2b-256 2637f50254b82f48d2fa0f1230492a7e1f538c5b3780f7fc00200ab143db8138

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