Pyproject Toml
When to Use This Skill
Use pyproject.toml configuration when you need:
- Project metadata - Name, version, description, authors
- Dependency management - Core and optional dependencies
- Build configuration - Setuptools, hatch, flit, or poetry
- Tool configuration - pytest, ruff, mypy, black, isort
- Entry points - CLI scripts and plugins
- Package discovery - Source directory configuration
Avoid when:
- Legacy projects requiring setup.py (rare, migrate instead)
- Non-Python projects
Resources
- PEP 517: Build system interface
- PEP 518: pyproject.toml specification
- PEP 621: Project metadata
- PEP 660: Editable installs
- Setuptools: https://setuptools.pypa.io/
- UV: https://docs.astral.sh/uv/
Use this template for all Python projects in workspace-hub!
Sub-Skills
- 1. Version Constraints (+3)
Sub-Skills
- Complete pyproject.toml Template
- 1. Build System (+4)
- pytest (+2)
- Example 1: Data Processing Library (+2)