# Python
__pycache__/
*.py[cod]
*.pyo
*.pyd
*.so
*.egg
*.egg-info/
dist/
build/
.eggs/
pip-wheel-metadata/

# uv
.python-version  # managed by uv; do NOT commit unless pinning intentionally

# Virtual environments
.venv/
venv/
env/

# Testing / coverage
.pytest_cache/
htmlcov/
.coverage
.coverage.*
coverage.xml

# Type checking
.mypy_cache/

# Ruff
.ruff_cache/

# Editors
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store

# Notebooks (outputs only — clear outputs before committing)
.ipynb_checkpoints/
*.ipynb  # add exceptions for examples/ if needed

# Secrets (belt-and-suspenders; pre-commit catches these too)
.env
*.pem
*.key
