Set up a new Python project.
Follow the instructions in the meta README to set up a new project.
Happy coding!
Fancier automation with github actions (eg):
Support codecov.
Support documentation with sphinx or mkdocs.
Automatic dependency updates with uv-bump.
Expose a minimal FastAPI app.
Expose a minimal CLI app with Typer.
Convert the whole thing to a Copier template.
Town crier integration.
Release management with semantic versioning.
Move the entire package in a template subfolder.
That is the real package that will be copied and renamed.
Only leave renamer related things here.
Maybe some ruff/precommit configs can be shared.
The internal package can be installed by going in the template folder and treating it as a separate folder.
- Remove dependencies from the
pyproject.tomlfile. - Automagically generate the optional dependencies list,
by parsing the
pyproject.tomlfile. The dependencies are the same as the ones in thepyproject.tomlfile, but by runninguv addagain the versions are updated.
- Split dev dependencies into groups
- lint
- test
- doc (?? we don't have any doc specific deps yet)
- ci (?? we don't have any ci specific deps yet)
- Add optional dependencies (extra sections)
- some optional feature
- full (all optional dependencies)
- add info on how to keep it updated
- add info on how to set it up
- add info on how to handle false positives
- add check in renamer script
- check for invalid characters (eg
-, spaces, etc)
- check for invalid characters (eg
- add info in readme
- get project name from CLI arguments