# --- Python ---
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# --- Virtualenvs ---
.venv/
venv/
env/
ENV/
# .python-version is committed to pin the project Python version (uv reads it).

# --- uv ---
# Keep uv.lock committed for apps (recommended). Ignore caches only.
.uv-cache/

# --- Testing / coverage ---
.pytest_cache/
.coverage
.coverage.*
htmlcov/
coverage.xml
.tox/
.nox/

# --- Type checkers / linters ---
.mypy_cache/
.dmypy.json
dmypy.json
.ruff_cache/
.pyre/
.pytype/

# --- Jupyter ---
.ipynb_checkpoints
profile_default/
ipython_config.py

# --- IDEs ---
.idea/
.vscode/
*.swp
*.swo
*~
.DS_Store
Thumbs.db

# --- Secrets / env ---
.env
.env.*
!.env.example
.secrets.baseline.local

# --- SubSift runtime data ---
data/
*.db
*.db-journal
*.db-wal
*.db-shm
screenshots/
scans/
logs/
*.log

# --- Docker ---
.docker/

# --- Misc ---
*.tmp
*.bak
node_modules/
