A Python project template for cookiecutter.

Build Status Coverage Status Scrutinizer Code Quality

This is a template for a typical Python library following modern packaging conventions. It utilizes popular libraries alongside Make, Graphviz, and Pandoc to fully automate all development and deployment tasks.

Here are few sample projects based on this template:

Get Started

$ pip install cookiecutter
$ cookiecutter https://github.com/jacebrowning/template-python.git

Cookiecutter will ask you for some basic info (your name, project name, python package name, etc.) and generate a base Python project for you.

After Cookiecutter creates your new project from the template:

  • set TEST_RUNNER in the Makefile to your preferred test runner (nose or pytest)
  • change the license


  • Preconfigured setup for Travis-CI, Coveralls, and Scrutinizer
  • Makefile for automating common development tasks:
    • Setting up a virtualenv
    • Installing dependencies using pip
    • Running tests
    • Running style checkers (pep8/pep257) and linters (pylint)
    • Building documentation
    • Creating and releasing distributions to PyPI