Poetry is a Python packaging and dependency management tool that consolidates project configuration into a single pyproject.toml file.
Poetry solves the fragmentation of Python project configuration by replacing multiple files—setup.py, requirements.txt, setup.cfg, MANIFEST.in, and Pipfile—with a unified pyproject.toml format. It handles dependency declaration, management, and installation, ensuring consistent environments across different machines. The tool uses a lock file to guarantee reproducible builds and provides a straightforward command-line interface for common packaging tasks.
Developers should adopt Poetry if they want to move away from managing multiple configuration files and prefer a modern, standardized approach to Python packaging. It suits projects of any size that need reliable dependency resolution and reproducible builds. The tool includes a plugin system, as evidenced by related projects like poetry-plugin-export for converting to requirements.txt format and poetry-plugin-bundle for installing to external environments, allowing customization beyond core functionality.
The project maintains active development with ongoing work across its ecosystem. Poetry is described as large and complex with a documented need for contributors, and the maintainers provide guidance through contributing documentation and a list of suggested issues for new contributors.