You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Compatibility testing for multiple versions of Python with [**Tox**](https://github.com/tox-dev/tox) and its plugin [tox-uv](https://github.com/tox-dev/tox-uv) ➜ `make tox`
37
38
38
39
-**Documentation**
40
+
39
41
-[**MkDocs**](https://github.com/mkdocs/mkdocs) with [mkdocs-material](https://github.com/squidfunk/mkdocs-material) theme
40
42
- Live server: `make docs` (serves on localhost:8080)
CI workflows are scaffolded for upcoming releases.
63
+
-**CI/CD Workflows**
61
64
65
+
This template includes GitHub Actions workflows for continuous integration, testing, and release automation:
66
+
67
+
-**PR Commenting** (`pr-thank-you.yaml`): Posts a fun GIPHY comment on new pull requests using [`docker-action-pr-giphy-comment`](https://github.com/bassemkaroui/docker-action-pr-giphy-comment)
68
+
69
+
-**CI/CD Pipeline** (`main.yaml.jinja`):
70
+
-**Checks**: Linting (Ruff), type checking (Mypy), documentation build.
71
+
-**Tests**: Runs `pytest` across supported Python versions using a matrix strategy.
72
+
-**Releases**: Automatically publishes releases when a Git tag is pushed.
73
+
-**Docs Deployment**: Deploys MkDocs documentation to GitHub Pages.
74
+
-**Package Publishing** (optional): Publishes the package to PyPI if `publish_to_pypi` is enabled and `PYPI_TOKEN` is set.
75
+
76
+
These workflows are generated into `.github/workflows/` in the scaffolded project. You can customize them further as needed.
62
77
63
78
## 🛠 Prerequisites
64
79
@@ -67,7 +82,6 @@ A modern, batteries‑included [Copier](https://github.com/copier-org/copier) te
67
82
-**copier-templates-extensions** ≥ 0.3.1
68
83
-**uv** (if not installed check [uv installation guide](https://docs.astral.sh/uv/getting-started/installation/))
69
84
70
-
71
85
## 🎉 Quickstart
72
86
73
87
```bash
@@ -101,6 +115,7 @@ make check # runs all checks: lint, types, docs build, API, etc.
> To be able to [update your project](https://copier.readthedocs.io/en/stable/updating/), do not delete or manually modify the generated `.copier-answers.yml` file.
112
127
113
-
114
128
## 📋 Available Duties
115
129
116
130
All tasks are defined in `duties.py` and exposed through `make`. Common duties include:
@@ -143,33 +157,31 @@ tox Run tests across multiple Python versions.
143
157
144
158
For the full list and details, see [duties.py](https://github.com/bassemkaroui/python-template-uv/blob/main/template/duties.py.jinja).
0 commit comments