https://github.com/stuartellis/copier-sve-python
Python project template using the Copier tool
https://github.com/stuartellis/copier-sve-python
copier-template
Last synced: 5 months ago
JSON representation
Python project template using the Copier tool
- Host: GitHub
- URL: https://github.com/stuartellis/copier-sve-python
- Owner: stuartellis
- License: mit
- Created: 2024-12-20T11:52:38.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-26T20:07:30.000Z (about 1 year ago)
- Last Synced: 2025-04-26T21:19:43.014Z (about 1 year ago)
- Topics: copier-template
- Language: Jinja
- Homepage:
- Size: 120 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# copier-sve-python
[](https://github.com/copier-org/copier) [](https://github.com/pre-commit/pre-commit) [](https://github.com/prettier/prettier) [](https://github.com/RichardLitt/standard-readme)
This [Copier](https://copier.readthedocs.io/en/stable/) template provides configuration files for a Python project.
It generates a `pyproject.toml` files that supports:
- [Mypy](http://www.mypy-lang.org/) - Python type checker
- [Pyright](https://microsoft.github.io/pyright) - Python type checker
- [pytest](https://docs.pytest.org/en/stable/) - Python testing framework
- [pytest-cov](https://github.com/pytest-dev/pytest-cov) - Code coverage plugin for pytest
- [python-semantic-release](https://python-semantic-release.readthedocs.io/en/latest/) - Automates the release process for Python projects
- [Ruff](https://docs.astral.sh/ruff/) - Python linter and code formatter
- [uv](https://github.com/astral-sh/uv) - Python package and project manager
The files in the template also enable a set of additional tools:
- [markdownlint-cli2](https://github.com/DavidAnson/markdownlint-cli2)
- [MkDocs](https://www.mkdocs.org)
- [pre-commit](https://pre-commit.com)
- [Trivy](https://trivy.dev)
- [yamllint](https://yamllint.readthedocs.io)
## Install
You need [Copier](https://copier.readthedocs.io/en/stable/) to use template for a project. Use [uv](https://docs.astral.sh/uv/) or [pipx](https://pipx.pypa.io/) to run Copier. These tools enable you to use Copier without installing it.
You can either create a new project with this template or add the template to an existing project. Use the same _copy_ sub-command of Copier for both cases. Run Copier with the _uvx_ or _pipx run_ commands, which download and cache software packages as needed. For example:
```shell
uvx copier copy git+https://github.com/stuartellis/copier-sve-python my-project
```
## Usage
To create a project with this template, use the _copy_ sub-command:
```shell
copier copy git+https://github.com/stuartellis/copier-sve-python your-project-name
```
To update a project again with this template, run these commands:
```shell
cd your-project-name
copier update -a .copier-answers-python.yaml .
```
## Contributing
This project was built for my personal use. I will consider suggestions and Pull Requests, but I may decline anything that makes it less useful for my needs. You are welcome to fork this project.
Some configuration files for this project are managed by my [baseline](https://github.com/stuartellis/copier-sve-baseline) Copier template. To synchronize this project with the baseline template, run these commands:
```shell
cd copier-sve-python
copier update -a .copier-answers-baseline.yaml .
```
## License
MIT © 2025 Stuart Ellis