Skip to content

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.