Powered by Cookiecutter and inspired by Pydanny's cookiecutter and with the goal of optimize our development processes, we are happy to introduce our Django projects boilerplate packed and ready to use with the following features:
- Django 1.10
- Ansible provisioning for production, testing and development environments
- Travis CI for continuous integration
- AWS CodeDeploy for continuous delivery
- 12 Factor based settings
- SSL automatic certificate installation
- Whitenoise for static files optimization and distribution.
- Systemd daemon for production environment
- NGINX setup for production environment
- PostgreSQL as database engine
- Preloaded with ZSH profile and development scripts.
- Install cookiecutter by running this command (NIX systems only):
$ pip install cookiecutter
- Run against this repo
$ cookiecutter https://github.com/inventivehack/cookiecutter-django-ihk
In order to run the project you need to first install:
- Create a copy of
.env.sample
and change its content. - Run
$ vagrant up --provision
to start the virtual machine. - Run
$ vagrant ssh
to connect to the machine via SSH. - Run
$ run
to start the development server - Go to the application port (8888 by default) http://localhost:8888/.
If you selected use_aws_codedeploy during setup, all you need to do is create an application, create a deployment group, and release a new revision.
All deployments require a .env
file as well as the .key
and .crt
files from the
SSL certificate inside /app/ansible/nginx/files/ssl
in order to succeed.
This is what we use to optimize projects setup, it might not be what you want but don't worry, you have options
Please fill free to submit pull requests as well as open issues.
This project is licensed under the MIT License - see the LICENSE file for details