Generates the structure for Python libraries using cookiecutter.
This is a template for a typical Python library following modern packaging conventions. It utilizes popular libraries alongside Make, Pandoc, and Graphviz to fully automate all development and deployment tasks. Check out the live demo: jacebrowning/template-python-demo
Here are a few sample projects based on this template:
- jacebrowning/sappy
- theovoss/Chess
- sprout42/StarStruct
- MichiganLabs/flask-gcm
- flask-restful/flask-restful
If you are instead looking for a Python application template, check out one of the sibling projects:
Install cookiecutter
and generate a project:
$ pip install cookiecutter
$ cookiecutter gh:jacebrowning/template-python -f
Cookiecutter will ask you for some basic info (your name, project name, python package name, etc.) and generate a base Python project for you.
If you still need to use legacy Python, older versions of this template are available on a branch:
$ cookiecutter gh:jacebrowning/template-python -f --checkout python2
- Preconfigured setup for Travis-CI, Coveralls, and Scrutinizer
Makefile
for automating common development tasks:- Installing dependencies into a virtual environment using
pipenv
- Running tests
- Running style checkers (
pycodestyle
/pydocstyle
) and linters (pylint
) - Building documentation
- Creating and releasing distributions to PyPI
- Installing dependencies into a virtual environment using
Checkout the appropriate branch of template-python-demo and manually merge changes into your project.