This tool current defines the repo structure and the contents of the pyproject.toml in a fairly inflexible manner.
Since the only packaging option is now uv, we should consider using the uv init command to create the repo structure. This will allow more flexibility in the types of software that can be built (libraries, executables, packages, etc)
Proposed approach
- Continue to use cookiecutter for configurable options and non-python package files (pre-commit,
.github/, etc)
- In the post-gen hooks script:
- Run
uv init using configurable options selected in the cookiecutter command.
- Add the extra config to the generated
pyproject.toml (mypy, ruff, pytest, etc)
- Keep existing approach of adding dependencies
This tool current defines the repo structure and the contents of the
pyproject.tomlin a fairly inflexible manner.Since the only packaging option is now
uv, we should consider using theuv initcommand to create the repo structure. This will allow more flexibility in the types of software that can be built (libraries, executables, packages, etc)Proposed approach
.github/, etc)uv initusing configurable options selected in the cookiecutter command.pyproject.toml(mypy, ruff, pytest, etc)