Skip to content

wildfish/wildfish-django-starter

Repository files navigation

Wildfish Django Starter

Build Status

A Django project cookiecutter template to kick start development for new projects. Includes apps and settings we use in the majority of projects, along with an integrated version of our other cookiecutter-django-crud template which will also generate a model, CRUD views and tests.

Features

  • 2 tier layout
  • Python essentials: ipython, ipdb, flake8
  • Requirements file managed using pip-tools.
  • Settings using django-configurations
  • Testing bits: django-webtest, model-bakery
  • Redis cache (via django-redis-cache)
  • Sentry client, django-debug-toolbar
  • django-model-utils
  • Django CRUD views and templates using django-vanilla-views.
  • A Django ModelForm using bootstrap3.
  • Tests for all of the views using WebTest.
  • Model Bakery generated models for the tests.

Quickstart

Ensure you have cookiecutter installed:

pip install cookiecutter

Then use cookiecutter to generate your project from this template with:

cookiecutter [email protected]:wildfish/wildfish-django-starter.git

Then from your generated project:

npm install

# TODO to be replaces/updated in docs ticket.
pip install -r requirements.in

python manage.py migrate

Requirements using pip-compile

The generated project uses a requirements.in file to make it straightforward to keep pinned requirements up to date using the pip-compile command from pip-tools.

To generate a requirements.txt from your project simply use the pip-compile command.

Read more here, https://github.com/nvie/pip-tools#example-usage-for-pip-compile