Skip to content

Latest commit

 

History

History
175 lines (136 loc) · 7.85 KB

README.rst

File metadata and controls

175 lines (136 loc) · 7.85 KB

Zuru Tech Cookiecutter PyPackage 🍪 🐍

Development Status: Alpha Updates License Travis CI Build Status

Cookiecutter opinionated template for a Python package compliant with zurutech/styleguide.

Features

Quickstart

This is the flow we reccommend for new projects.

Install the latest Cookiecutter if you haven't installed it yet (this requires Cookiecutter 1.4.0 or higher):

pip install -U cookiecutter

Generate a Python package project:

cookiecutter https://github.com/zurutech/cookiecutter-pypackage.git

Then:

  • Create a GitHub repo and put it there.
  • Expand on the copmatible Python versions that your package support by specifying them in in the setup.py file while also testing for them via Tox and Travis-CI.
  • Add license headers to your project using licenseheaders.
  • Add the repo to your Travis-CI account.
  • Register your project with PyPI.
  • Run the Travis CLI command travis encrypt --add deploy.password to encrypt your PyPI API token in Travis config and activate automated deployment on PyPI when you push a new tag to master branch.
  • Add the repo to your ReadTheDocs account + turn on the ReadTheDocs service hook.
  • Release your package by pushing a new tag to master.
  • Activate your project on pyup.io (pyup.io is a service that helps in keeping dependencies fresh by automatically generating a PR whenever one of them gets a new release, it's free for public repos).

For more details, see the cookiecutter-pypackage tutorial.

Not Exactly What You Want?

Don't worry, you have options:

Similar Cookiecutter Templates

Fork This / Create Your Own

If you have differences in your preferred setup, I encourage you to fork this to create your own version. Or create your own; it doesn't strictly have to be a fork.

  • Once you have your own version working, add it to the Similar Cookiecutter Templates list above with a brief description.
  • It's up to you whether or not to rename your fork/own version. Do whatever you think sounds good.