Project template for django based projects, optimized for making REST API with deployment on Heroku and EC2 instances via Ansible.
- Django 1.10.x
- Python 3.5.x only
- 12-Factor based settings management via django-environ, reads settings from
.env
if present. - PostresSQL everywhere (support of postgis is available)
- Procfile for deploying to Heroku
- Ansible playbook for deployment to Ubuntu 16 LTS (optional)
- Designed to work with Django Rest Framework 3.0+.
- Uses
django_sites
instead ofdjango.contrib.sites
- Use mkdocs for project documentation.
- Uses py.test as test runner.
travis.yml
for running isolated tests and deployments to dev/qa/prod environment on Heroku from git branches.- Custom
User
app, for easier extensibility. - Media storage using Amazon S3 (optional)
- Letsencrypt Support via certbot
- SASS with autoprefixing support using django-compressor (optional)
- Livereloading of browser in development via devrecargar
- robots.txt and humans.txt configured
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:
- initialize a git repo and bump initial tag and version.
- create a virtualenv in the folder
venv
inside the project. - install all the python dependencies inside it.
- try to create a postgres database and run the initial migration against it.
then only thing you'll need to do is:
cd
into the newgithub_repository
folder just created.- Activate virtualenv
source venv/bin/activate
. - Run
fab serve
or./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.
Refer to CHANGELOG.md.
Everyone interacting in the django-init project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.
Built with ♥ at Fueled