Cookiecutter Python Package Template with Pipenv
|travis| |donate|
.. |travis| image:: https://img.shields.io/travis/com/elgertam/cookiecutter-pipenv.svg :target: https://travis-ci.com/elgertam/cookiecutter-pipenv
.. |donate| image:: https://img.shields.io/badge/donate-PayPal-blue.svg?logo=paypal :target: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=CPTWMKWMVXDQW¤cy_code=USD&source=url
Cookiecutter_ template for a Python package with Pipenv_.
Packaging in Python can be a pain, but it doesn't need to be. The new Pipenv project
has rapidly improved packaging in Python by tackling two related problems: automatic
package dependency management and virtualenv management. Pipenv uses the new Pipfile_
format that is the endorsed replacement for requirements.txt
. Pipenv is the future of
Python package management, and is even recommended to newcomers in the Python tutorial_.
unittest
and python setup.py test
or py.test
.. _Cookiecutter: https://github.com/audreyr/cookiecutter .. _Pipenv: https://docs.pipenv.org/ .. _Pipfile: https://github.com/pypa/pipfile .. _tutorial: https://packaging.python.org/tutorials/managing-dependencies/#managing-dependencies
Install the latest Cookiecutter if you haven't installed it yet (this requires Cookiecutter 1.4.0 or higher)::
pip install -U cookiecutter
Install the latest Pipenv::
pip install -U pipenv
Generate a Python project that uses Pipenv::
cookiecutter gh:elgertam/cookiecutter-pipenv
Once your project has been created, change directories::
cd <project-name>
Then:
git init
).pipenv install --dev
).travis encrypt --add deploy.password
to encrypt your PyPI password in Travis config
and activate automated deployment on PyPI when you push a new tag to master branch.pyup.io
_... _Register: https://packaging.python.org/tutorials/packaging-projects/#uploading-the-distribution-archives
Fork This / Create Your Own
This project itself is a fork of Audrey Roy Greenfeld's exceptional
cookiecutter-pypackage_. 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.
.. _cookiecutter-pypackage: https://github.com/audreyr/cookiecutter-pypackage
Or Submit a Pull Request
~~~~~~~~~~~~~~~~~~~~~~~~
I will consider pull requests as they come in, if they enhance the overall packaging experience.
.. _Travis-CI: http://travis-ci.org/
.. _Tox: http://testrun.org/tox/
.. _Sphinx: http://sphinx-doc.org/
.. _ReadTheDocs: https://readthedocs.io/
.. _`pyup.io`: https://pyup.io/
.. _Bumpversion: https://github.com/peritus/bumpversion
.. _PyPi: https://pypi.org/