Code Monkey home page Code Monkey logo

cookiecutter-pipenv's Introduction

Cookiecutter Python Package Template with Pipenv

travis donate

Cookiecutter template for a Python package with Pipenv.

Why 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.

Features

  • Testing setup with unittest and python setup.py test or py.test
  • Travis-CI: Ready for Travis Continuous Integration testing
  • Tox testing: Setup to easily test for Python 2.7, 3.5, 3.6, 3.7
  • Sphinx docs: Documentation ready for generation with, for example, ReadTheDocs
  • Bumpversion: Pre-configured version bumping with a single command
  • Auto-release to PyPI when you push a new tag to master (optional)
  • Command line interface using Click (optional)

Quickstart

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:

  • Create a repo and put it there (e.g. git init).
  • Install the dev requirements into a virtualenv (pipenv install --dev).
  • 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 password 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.

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.

Or Submit a Pull Request

I will consider pull requests as they come in, if they enhance the overall packaging experience.

cookiecutter-pipenv's People

Contributors

elgertam avatar almogcohen avatar psiace avatar chris-may avatar tacoman667 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.