A opinionated template which is conceptualized by reading many other opinionated Django Project template proposals. Taking the best of those. Some of the key features of this template are
- Developer first (minimal steps required to run/develop things)
- Use mac/linux/Windows as long you can run Docker
- Docker-compose for services
pipenv
to track project python dependencies.- No namespace conflicts between django community and your projects.
- cd newly cloned repo
- Make sure docker and docker-compose is installed
- Install docker-ce
- Enable tcp control for docker host
- Make sure you
pipenv
is installed - Execute
pipenv --python 3.5
- Execute
pipenv shell
- Execute
pipenv install -d
- Execute
- Get a dev env
bin/dev_box
(This might take some time if its first time on the system)- your username is your password if required
- If for some reason you see errors with env_generator.py to unblock
- copy
env_template.yaml
toenv_template_override.yaml
- Replace the content of each value manually yourself
- copy
- Deploy local instance of yourDjangoProject
- Access things on 0.0.0.0:8080
- Figure out
- Replacement for
youNameSpace
- Replacement for
yourDjangoProject
- Replacement for
- Replace all instances of these two.
- Create branch
git branch
and do what you are best at.
- Replace sqlite db with postgres
- Add testing support
- Add celery support out of the box to template
- Add logging to local ELK Stack
- Add DRF support
- Add AppAdmins to templates
- Add DjangoDbBackup
- Add Production like deployment
- Add kubernetes support