This repo provides a scratch of a Python project. Its purpose is to serve as starting point for the development of a Python project based on a minimal working structure.
- A preconfigured setup.py file following the suggestions from here;
- Sphinx autodocumentation with autodoc;
- Travis CI minimal configuration;
- GitHub Actions workflows with minimal configurations for latest Ubuntu, macOS and Windows;
- Tests with pytest;
- Development environment with two options:
- The classic virtualenv
- A conda environment with conda-devenv extension
- Hierarchical structure to a python package as suggested by "The Hitchhiker’s Guide to Python" (highly recommended reading);
- A Read The Docs configuration scratch;
- pre-commit to perform git hooks before commits. The following plugins are being used:
- trailing-whitespace
- end-of-file-fixer
- black (default options combined with customized line length to 100 chars per line)
- blacken-docs
- Coverage of the package with Codecov.
Contributions are VERY welcome. But please be aware of the purpose of the repo: A minimal working structure. If you want to add a feature which is very particular to your needs, please analyse if it fits the objective.
Suggestions and advices are welcome, feel free to open an Issue or send me an email.
My name is Diego. Feel free to contact me through the email [email protected].