List of Tools
- pylauncher: utility tool to infer the expected python to launch
Hint
pylauncher saves you some time in the sense that it does a
best effort to identify the most likely python version to run.
If you are in a folder in which there is a .venv folder, pylauncher
will run the python version of the .venv folder. This avoids you
to activate and deactivate virtual environments.
- pipx: application installation in isolated virtual environment
Hint
pipx is helpful because it will link the application to a python
version and environment packages. It is helpful because when you
invoke the application pipx the environment which was installed
is automatically run.
- asdf: python version management
- build: python build frontend system
- setuptools: python build backend system
- pytest: alternative to builtin module unittest
- pytest-cov: pytest plugin that integrates the Coverage.py package.
- tox. Task automation. Popularly used for test and code quality automation.
- mypy. Static analysis tool.
- black. Code formatting
- flake8. Linter. It is used to detect bad patterns that could even lead to bugs. Differently from black, it may change the generated bytecode.
- sphinx: Create documentation for python projects. (sphinx-themes
- reStructuredText: This is the format used by Sphinx.
- sphinx-autobuild: Useful while iterating through the process of documentation creation. It automatically creates a http-server to serve the generated document files.
- sphinx-apidoc: Plugin to automatically extract code documentation from your python files.
- cibuildwheel: Python package conceived for running in CI environments such as GitHub Actions that build wheels for different systems.
- cython: A superset of the python language that facilitates the creation of c-extensions.
- twine: A tool to upload your packages to a PyPi certificate repository.