List of Tools Used for Python¶
A list of tools that are commonly used in the Python ecosystem.
For example, Ruff is a famous static linter and formatter written in Rust.
Note
This list of tools are opinionated, feel free to remove any by removing its occurrences in the pyproject.toml` file.
| Name | Description | Website |
|---|---|---|
| Poetry | A dependency management and packaging tool for Python projects. | Poetry |
| Sphinx | A documentation generator for Python projects. | Sphinx |
| GitPython | A Python library used to interact with Git repositories. | GitPython |
| Pre-commit | A framework for managing and maintaining multi-language pre-commit hooks. | Pre-commit |
| Coverage | A tool for measuring code coverage of Python programs. | Coverage.py |
| Pytest | A testing framework for Python that makes it easy to write simple and scalable test cases. | Pytest |
| Ruff | A fast Python linter that checks for style and programming errors. | Ruff |
| Mypy | An optional static type checker for Python. | Mypy |
| Cython | A programming language that makes writing C extensions for Python as easy as Python itself. | Cython |
| Isort | A Python utility for sorting imports. | Isort |
| Time-machine | A library for manipulating time in tests. | Time-machine |
| Nbconvert | A tool for converting Jupyter Notebooks to other formats. | Nbconvert |
| Twine | A utility for publishing Python packages on PyPI. | Twine |
| Black | A code formatter for Python that enforces a consistent coding style. | Black |
| Flake8 | A tool for enforcing coding style in Python, combining PyFlakes, pycodestyle, and McCabe complexity checker. | Flake8 |
| Codespell | A tool for checking and correcting common misspellings in text files. | Codespell |
| Creosote | A tool for managing Python virtual environments. | Creosote |
| Pyright | A static type checker for Python, providing type checking and type inference. | Pyright |
| MkDocs | A static site generator for project documentation. | MkDocs |