Creating a Django project template

Sometimes it's useful to customize the starting point for Django's startproject command. You can pass this command the --template option demonstrated here. A less obvious feature of this mechanism is the --name option, which tells Django which files in the project template should be rendered as templates.

There are project templates around that can be used in this way, for example: django-project-template.

This week I worked on a template for Mezzanine. Right now it requires the latest git version of Mezzanine, because of a fix in how the --name option gets handled. The template is here. I was going to describe the process of putting it together but, by looking at the template, it's self-explanatory.