django-init is a project boilerplate for Django based projects.
.env
if present.django_sites
instead of django.contrib.sites
.User
app, for easier extensibility.Auth
app with JWT based Token Backend system with login
, logout
and current_user_profile
modification views for easier extensibility.Install cookiecutter with brew install cookiecutter
or pip install cookiecutter
.
cookiecutter gh:Fueled/django-init
It will ask you couple of questions required to generate the project. It will generate a folder containing all the files in your current working directory.
If you opt to setup the project automatically, it will also:
venv
inside the project.poetry.lock
file after resolving dependencies and then generate requirements.txt
and requirements_dev.txt
for production and dev use respectively, for backward-compatibility.then only thing you'll need to do is:
cd
into the new github_repository
folder just created.make run
or activate virtualenv with poetry shell
and run ./manage.py runserver
Don't forget to carefully look at the generated README. Awesome, right?
You can also explore the wiki section for details on advance setup and usages.
To guarantee repeatable installations, all project dependencies are managed using Poetry. The project’s direct dependencies are listed in pyproject.toml
.
Running poetry lock
generates poetry.lock
which has all versions pinned.
You can install Poetry by using pip install --pre poetry
or by following the official installation guide here.
Tip: We recommend that you use this workflow and keep pyproject.toml
as well as poetry.lock
under version control to make sure all computers and environments run exactly the same code.
For compatibility, requirements.txt
and requirements_dev.txt
can be updated by running
poetry export -f requirements.txt -o requirements.txt
poetry export -f requirements.txt -o requirements_dev.txt --with dev
or
make generate_requirements
django-init
is a rolling release project. Commit and fixes are added to master
branch on regular basis and always have latest stable django and associated libraries. You are advised to follow-up with changelogs.
Refer to HISTORY.md.
Everyone interacting in the django-init project's codebase, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.
Built with ♥ at Fueled