This GitHub template repository can be used to create a new repository with the skeleton of a Python Click CLI tool, based on the click-app cookiecutter.
Start here: https://github.com/simonw/click-app-template-repository/generate
The name of your repository will be the name of the CLI tool, and also the name of the Python package that you publish to PyPI - so make sure that name is not taken already!
Add a one-line description of your CLI tool, then click "Create repository from template".
Once created, your new repository will execute a GitHub Actions workflow that uses cookiecutter to rewrite the repository to the desired state. This make take 30 seconds or so.
You can see an example of a repository generated using this template here:
The test.yml
GitHub Actions workflow will run your tests automatically any time you push a change to the repo.
The publish.yml
Action runs when you create a new GitHub release. It can build and upload your package to PyPI.
For this to work, you need to create an API token for your PyPI account and add that to your repository as a secret called PYPI_TOKEN
.
See Publishing your library as a package to PyPI for details.