Home
This is a modern Cookiecutter template that can be used to initiate a Python project with all the necessary tools for development, testing, and deployment. It supports the following features:
- uv for dependency management
- Supports src layout](https://packaging.python.org/en/latest/discussions/src-layout-vs-flat-layout/).
- CI/CD with GitHub Actions
- Pre-commit hooks with pre-commit
- Code quality with ruff, mypy, wemake-python-styleguide, deptry and prettier
- Publishing to PyPI by creating a new release on GitHub
- Testing and coverage with pytest and codecov
- Documentation with Docusaurus
- Compatibility testing for multiple versions of Python with tox-uv
- Containerization with Docker
- Development environment with VSCode devcontainers
An example of a repository generated with this package can be found here.
Quickstart¶
Navigate to the directory where you want your new project and run:
uvx spinup-py my-project
Or install globally first:
uv tool install spinup-py
spinup-py my-project
Follow the guided prompts to configure your project. Once complete, a new directory my-project/ will be created with everything set up.
Acknowledgements¶
This project is partially based on Audrey Feldroy's great cookiecutter-pypackage.