Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching contributors…
Cannot retrieve contributors at this time
69 lines (36 sloc) 2.74 KB

Django HTML5 Boilerplate


This is a starting template for Django website projects using (a slightly modified version of) HTML5 Boilerplate.


  • A Django project skeleton
  • A slightly now less modified version of the HTML5 Boilerplate
  • django.contrib.staticfiles url conf set up for serving static media
  • A template file that allows you to set environment-specific settings
  • Requirements files for pip (details below)

How to use the template

Using pip and virtualenv makes it a lot easier to set up a new project using this boilerplate. If you're unfamiliar with virtualenv, I've found a few good reads explaining the concept.

Start by creating your virtual environment (I'm using Doug Hellman's virtualenvwrapper):

    mkvirtualenv projectname

Replace 'projectname' with your desired environment name.

I've included two separate requirements files:

  • requirements_min.txt contains the minimum requirements to get this up and running
  • requirements_plus.txt contains a few extra Python packages that I use in most of my projects (South, PIL, etc.)

Install one of the requirements files:

    pip install -r <requirements_min.txt or requirements_plus.txt>

When you're finished installing requirements, you'll need to set up your file:

    # set path
    cd <path-to-project>/

    # Rename the project folder 
    mv projectname <project_name>

    # copy

    # Edit

After you configure your local settings (database, etc.) you're ready to run syncdb:

    python syncdb

Once that's completed you can boot up the dev server:

    python runserver

Then open up your browser and go to -- if all went well you should see the "It works!" page.

A note about humans and robots

HTML5 Boilerplate includes humans.txt and robots.txt files. I had thought about including a method for serving those files with this project but decided that the most appropriate way to do so was not through Django but through your web server (be it, Apache, nginx or what have you). They are included for your convenience in the config/ folder, but it's up to you to ensure that they're served properly.

Jump to Line
Something went wrong with that request. Please try again.