# Python-generated files
__pycache__/
*.py[oc]
build/
dist/
wheels/
*.egg-info

# Virtual environments
.venv

# Editor / OS
.vscode/
.idea/
.DS_Store

# Local secrets — never commit. Copy .env.example to .env.
.env

# Coverage / test artifacts
.coverage
htmlcov/
.pytest_cache/
.mypy_cache/
.ruff_cache/

# uv lock is committed; the build artifacts are not.