This is a template for Python projects. What you get:
- Source code and test code is seperated in different directories.
- External libraries installed and managed by Pip and setuptools in a pyproject.toml.
- Setup for tests using Pytest and coverage with Pytest-Cov.
- Continuous testing with Github-Actions including pre-commit.
- Code coverage reports, including automatic upload to Codecov.
- Code documentation with Mkdocs.
├── pyproject.toml
├── ... other config files ...
├── docs
│ ├── api.md
│ └── index.md
├── examples
│ └── ...
├── fastvector
│ ├── __init__.py
│ ├── vector.py
│ └── version.py
└── tests
├── __init__.py
└── test_vector.py
# Build and Install (local)
pip install -e . # OR
pip install -e ../Python-Project-Template # OR
pip install -e ../Python-Project-Template[all]
# Test
pytest tests # OR
pytest . # OR
pytest
# Code Coverage
pytest --cov=fastvector tests --cov-report=html