A customizable template for new Python projects to get you up and running with current best practices faster.
Features
- Each project has a README and CHANGELOG file and includes further documentation based on Material for MkDocs or Sphinx.
- Testing and continuous integration tooling are included from the very beginning
- Test coverage is collected and displayed as a badge
- Coverage report is integrated with Gitlab's coverage report artifact
- Projects use pre-commit for sanity checks on each commit or push
- Projects use bumpversion to increase their version according to semantic versioning guidelines
- Python projects are installable by default and provide a simple command-line interface
Everything comes pre-configured with sensible defaults so you can focus on your implementation and let the template handle the rest.
See the sample project to see how projects generated from this template using default values look like.
Getting Started
Prerequisites
- Python3.11 or newer
Installation
pip install init-python-project
Note: If you have pipx installed (you should, it is good), you can skip this step and instead run it directly using pipx run init-python-project
Usage
init-python-project <name of project>
User Guide
The first part of the user guide consists of tutorials on how to answer the template questions for Your First Project, what Next Steps there are after your project is created and why the Project Structure looks like it does.
The second part of the user guide explains how best practices, like testing, documentation, and continuous integration, are implemented in this template.
Known Issues
- Do not name your project
test. It will mess withpytest's automatic test discovery mechanism.
Metadata
Release files for init-python-project 0.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| init-python-project-0.0.6.tar.gz | 2.2 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| init_python_project-0.0.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.6 MB
Release files / init-python-project-0.0.6.tar.gz
| Download URL | init-python-project-0.0.6.tar.gz |
|---|---|
| Size | 2.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
be1cbfb07d5196a94ab8eb213c066e1fdd1c0ec9e909f655c3927fe163364b75
|
|
BLAKE2b-256 checksum How to use checksums |
5128326b894ed91674201519fe55eb74e8df707b5ff71c7cb4d82f139408f200
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Release files / init_python_project-0.0.6-py3-none-any.whl
| Download URL | init_python_project-0.0.6-py3-none-any.whl |
|---|---|
| Size | 2.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
33648a3bb36c523d85a2fcc3fb2e046b9ac2dc6def3a6a48558b8c32a9945fb3
|
|
BLAKE2b-256 checksum How to use checksums |
f18e46d828fa6089621dff42c24d3c43c16d0d1222905c25949eb0899ebceb53
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|