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

# Data directories (contain sensitive patient data)
data/
!frontend/src/data/
uploads/
# User-accessible medical records (bind mount)
medical-records/
*.db
*.sqlite
*.sqlite3

# Private test files (contain real lab reports - never commit)
test samples/
design examples/

# Environment files
.env
.env.local
.env.*.local

# Secrets inventory (contains all API keys - NEVER commit)
SECRETS_INVENTORY.md

# IDE
.vscode/
.idea/
*.swp
*.swo
*~

# OS
.DS_Store
Thumbs.db

# Frontend
frontend/node_modules/
frontend/dist/
frontend/.vite/
frontend/coverage/

# Ignore legacy frontend directory in backend
backend/frontend/

# Testing
.coverage
.pytest_cache/
htmlcov/
# Playwright MCP screenshots (auto-generated)
.playwright-mcp/
backend/.playwright-mcp/

# Logs
*.log
logs/

# Docker
.dockerignore

# Temporary files
tmp/
temp/
*.tmp

# Backup files
*.bak
*.backup
*.old
.env.bak

# Sensitive files
*.key
*.pem
*.crt
encryption.key

# PDF test files (may contain PHI)
*.pdf
!docs/*.pdf  # Allow documentation PDFs
test_panel_tracking.py
.playwright-mcp/*.png
.vercel
.env*.local
Loinc/
.review/

# Source logo folders (assets already copied to frontend/public/assets/)
1.2-Strava-API-Logos/
Whoop Logo/
.env.vercel-check
.env.vercel-production
.serena/

# Garmin Developer Program (confidential)
Garmin Developer/
*.json
postgres.env

# Git worktrees for isolated development
.worktrees/
