Skip to main content

A minimal, strictly structured Python project template.

Project description

Python Project Template

After creating a new git repository copy over:
* docs
* poetry_template
* tests
* pyproject.toml

Go through the project and change the placeholder values. pyproject.toml contains the list of the most important values present throughout the project.

Finally, delete this note.
# Note: Install Python 3
# Update pip and install virtualenv (dependency encapsulator) and black (linter; IDE needs to be restarted)

# Note: install Poetry for Linux
$: curl -sSL | python3 -

# Note: install Poetry for Windows
$: (Invoke-WebRequest -Uri -UseBasicParsing).Content | py -

$: curl -sSL | python3 - --uninstall
# Note: `.toml` project name and package have to match (poetry-template; poetry_template)
$: poetry install  # install all dependencies


$: pip install dist/poetry_template-0.1.4-py3-none.any.whl

$: poetry-template


$: poetry shell
$: cd docs
# Note: review source/ and source/index.rst
$: make html
# Note: see docs in docs/build/apidocs/index.html


$: poetry run poetry-template --help
$: poetry run python ./poetry_template/ --help

$: poetry run python ./poetry_template/ -x 2 -y -1 -tuple A B C -list D -list E -list F -move rock


$: poetry run pytest --durations=0
$: poetry run pytest --cov=poetry_template --cov-report=html tests
# Note: see coverage report in htmlcov/index.html
# Note: exclude directories from coverage report through .coveragerc


Dependencies, Python version and the virtual environment are managed by Poetry.

$: poetry search Package-Name
$: poetry add [-D] Package-Name[==Package-Version]


Define project entry point and metadata.


$: poetry run black .


$: poetry run mypy ./poetry_template ./tests


$: poetry run python ./poetry_template/

Build and publish

$: poetry build

# Note: get the token from your PiPy account
$: poetry config pypi-token.pypi PyPI-Api-Access-Token
$: poetry publish --build

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

poetry-template-0.1.4.tar.gz (5.1 kB view hashes)

Uploaded source

Built Distribution

poetry_template-0.1.4-py3-none-any.whl (6.3 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page