Skip to content

mainakchhari/django-projectkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Django StartProject Template

A production-ready Django template designed for Python 3.12, 3.13, and 3.14. Built with modern tooling to ensure a fast developer experience and secure deployments.

Note

This template uses the src-layout structure

Quick Start

Create a new project using the Django CLI. Since this template includes modern configuration files, you must specify them for placeholder replacement using the -n (extension) flag:

django-admin startproject \
  --template=<TEMPLATE_ZIP_URL> \
  -n pyproject.toml \
  [YOUR_PROJECT_NAME]

The TEMPLATE_ZIP_URL should be the path to the latest release artifact, unless you want the latest changes

Next Steps

  1. Add authorship:

    In pyproject.toml, add project author(s)

  2. Initialize Environment:

    cd my_project
    uv sync
  3. Configure Settings:

    See src/project_name/settings.py for variables)

    cp src/.env.dist src/.env
  4. Run Migrations:

    python src/manage.py migrate
  5. Launch Development Server:

    app-admin runserver

Tooling Choices

This is an opinionated template focused on ease of use and good practices:

  • uv: Handles dependency management and virtual environments with extreme speed. Run uv sync to generate your uv.lock.
  • django-environ: Manages configuration via environment variables, keeping secrets secure.
  • whitenoise: Efficiently serves static files directly from Django, simplifying Docker and production deployments.
  • django-rich: Adds rich color output to test runners, runserver

About

Template for django projects with dockerfile and opinionated defaults

Topics

Resources

Security policy

Stars

Watchers

Forks

Contributors