Skip to content

A tool for creating skeleton python project, built with popular develop tools and conform to best practice.

License

Notifications You must be signed in to change notification settings

wccdev/cookiecutter-pypackage

 
 

Repository files navigation

Cookiecutter PyPackage

Cookiecutter template for a Python package, built with popular develop tools and conform to best practice.

CI Status License

Features

This tool will create Python project with the following features:

  • Poetry: Manage dependency, build and release
  • Mkdocs: Writing your docs in markdown style
  • Testing with Pytest (unittest is still supported out of the box)
  • Code coverage report and endorsed by Codecov
  • Tox: Test your code against environment matrix, lint and artifact check
  • Format with Black and Isort
  • Lint code with Flake8 and Flake8-docstrings
  • Check static type with Mypy (optional)
  • Pre-commit hooks: Formatting/linting anytime when commit your code
  • Mkdocstrings: Auto API doc generation
  • Command line interface using Click (optional)
  • bump2version: Pre-configured version bumping with a single command
  • Continuous Integration/Deployment by GitHub actions, includes:
    • publish dev build/official release to TestPyPI/PyPI automatically when CI success
    • publish documents automatically when CI success
    • extract changelog from CHANGELOG and integrate with release notes automatically
  • Host your documentation from GitHub Pages with zero-config

Quickstart

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/waynerv/cookiecutter-pypackage.git

Then follow Tutorial to finish other configurations.

Credits

This repo is forked from zillionare/python-project-wizard, which originally forked from audreyfeldroy/cookiecutter-pypackage

About

A tool for creating skeleton python project, built with popular develop tools and conform to best practice.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 85.0%
  • HTML 10.9%
  • Makefile 4.1%