This is a modern template for a python project with the pyproject.toml with some fields to change based on project. It also has tox configured, docs dir for github pages, .github dir with tox-gh-actions configured and more.
- pyproject.toml
- setuptools backend (setup.py and setup.cfg)
- the src layout
- tox configured
- docs dir for github pages with a tests.yml ready
- .github dir with a tests.yml configured with tox-gh-actions
- tox configured with pytest, ruff, and mypy
- tests dir for pytest
Please Note that tox is configured with python 3.8,3.9, and 3.10. Feel free to reconfigure everything to your need.
$ git clone <repo_url>
$ cd <repo_name>
$ virtualenv venv
$ source venv/bin/activate
$ pip install -e ".[dev]"
Just running tox
with no args should work.
$ tox
tox creates virtual environments and runs all of pytest, ruff, and mypy.
....
....