Version = "0.29.5"
Version 1.0.0 will signify the first stable Django build!
This cookiecutter uses django-tailwind by default. django-tailwind requires Node.js be installed on your development machine.
The minumum version for django-cookiecutter is Python 3.10 because Structural Pattern Matching is used.
A Django project Cookiecutter complete with built-in continuous delivery using GitHub actions.
- Easy for new users to learn Django with sensible defaults. Also, local and test environments default to using SQLite, Django's bundled database.
- More advanced users can change the test environment database with an environment variable to match the production environment. See the How-to here.
- Django-allauth provides authentication.
- A CustomUser model, complete with tests and custom user types. See How-to Custom User for customisation options before your initial migration.
- Improved Admin panel security requires an authorised user to be logged in. The Admin panel now has the protections provided by django-allauth.
- htmx built in by default using django-htmx.
- django-tailwind and django-browser-reload built in by default.
- Customisable logging with rotating log files, see how-to-logging.
If you are new to Django and Cookiecutters and would like to take it for a spin, see our tutorial, Create a Django-Cookiecutter Project.
Customise your project with the following options when creating your django-cookiecutter.
If you are new to Django and arent sure what to select, choose the default setting to get the best new user experience.
- Quickly configure common Django settings as you setup your project.
- Deploy to production with Docker.
- Add documentation using Sphinx with:
- Furo, a clean modern theme, with dark and light mode options.
- A Copy Button to assist your users copy text or code snippets.
- Inline Tabs to group similar items.
- Use markdown or restructured text.
- Deploy to Read the Docs.
- A documentation framework with templates using the Diátaxis framework
- A Pre-generated Contributing How-to. Edit to suit your needs.
- A set of four custom GitHub Issues templates to help your users.
- Create the local git repository and make the initial commit automatically.
- A Conventional commits style custom commits message template.
- Pre-commit for code quality help and a README badge.
- A Python Semantic Release GitHub action and a README badge.
- A test suite complete with py3.10, py3.11, Linux, macOS and Windows matrix.
- Choose from five LICENSE types for open source projects.
- Choose from three Repository Status Badges. Quickly communicate to potential users.
Choose to add django-constance for dynamic Django settings, which allows you to:
- Easily migrate your static settings to dynamic settings.
- Edit dynamic settings in the Django Admin interface.
See our django-constance How-to for more information.
Contributions are very welcome and appreciated!
You can contribute in many ways.
See How-to Contribute to help you get started.
Please take a moment to read our Code of Conduct.