Skip to main content

Cookiecutter template for a Python namespace package

Project description

Cookiecutter Namespace Template for a Python package.

Downloads Versions Contributors License pre-commit.ci status Docs

Features

  • Testing setup with unittest or pytest

  • Tox testing: Setup to easily test for Python 3.9, 3.10, 3.11, 3.12, 3.13, and pypy.

  • Sphinx docs: Documentation ready for generation with, for example, ReadTheDocs

  • Bump My Version: Pre-configured version bumping with a single command

  • If the cookiecutter-namespace-template project template has been changed, you can apply these changes with

    $ cruft update
  • Optional auto-release to PyPI when you push a new tag to main (optional)

  • Optional command line interface using Typer or Click

If you really want to create a new package with Python 2, in spite of the Python 2.7 countdown and the Sunsetting Python 2 support, then use cookiecutter-namespace-template <0.2.

Quickstart

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

    $ python -m pip install -U cruft
  2. Generate a Python package project:

    $ python -m cruft create https://github.com/veit/cookiecutter-namespace-template.git
  3. Create a repo and put it there.

  4. Register your project with PyPI.

  5. Add the repo to your ReadTheDocs account and turn on the ReadTheDocs service hook.

  6. Release your package by pushing a new tag to main.

Pull requests

If you have differences in your preferred setup, I encourage you to fork this to create your own version. I also accept pull requests on this, if they’re small, atomic, and if they make my own packaging experience better.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cookiecutter_namespace_template-24.2.0.tar.gz (33.7 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file cookiecutter_namespace_template-24.2.0.tar.gz.

File metadata

File hashes

Hashes for cookiecutter_namespace_template-24.2.0.tar.gz
Algorithm Hash digest
SHA256 81144972d3e71d61e3c7696359981b382c1813960a304f188c6896781e5ebabc
MD5 6189f38bdca7178d4e49c13661d9e751
BLAKE2b-256 17c96e05a926a4f6d9e65d91217dd38af58ea3cc9ea1ae13a21f6303eed99ee7

See more details on using hashes here.

Provenance

File details

Details for the file cookiecutter_namespace_template-24.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for cookiecutter_namespace_template-24.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fc0de6440438963feb253e06d58775dfbe85368563577d6f6394b706ec957b5d
MD5 a9ab4a90ee502a134d50fec1f50de5f9
BLAKE2b-256 4eed971c0205389c4c117e1fa4f9b1d41aa771cfde59af4abdede5cb2b642eba

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page