Skip to content
Latchkey

What Is pyproject.toml?

pyproject.toml explained, including what it does and how it matters in CI/CD.

pyproject.toml is the standardized configuration file for Python projects (PEP 518/621).

What it is

It declares build system requirements, project metadata, dependencies, and tool config (Poetry, Ruff, Black, pytest) in one place, replacing scattered setup.py and config files.

Why it matters in CI/CD

CI uses it to build packages, install dependencies (Poetry/PDM/uv), and configure linters and tests. A companion lockfile (poetry.lock) pins exact versions.

Key takeaways

  • pyproject.toml is the modern Python config.
  • It centralizes metadata, deps, and tooling.
  • CI builds, installs, and lints from it.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →