__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
dist/
*.egg-info/
.eggs/

.venv/
venv/
env/
.env
.env.*
!.env.example
.env.local

.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/

logs/*.log
logs/*.jsonl
logs/
**/logs/*.log
**/logs/*.jsonl
**/logs/
data/
reports/
school_face_recognition/
analysis_data.json
*.db
*.sqlite
*.sqlite3

.vscode/
.idea/
*.swp
.DS_Store
Thumbs.db
.claude/

# --- Frontend (Next.js) ---
node_modules/
.next/
out/
.turbo/
*.tsbuildinfo
frontend/.env*.local

# --- Scratch / generated artifacts ---
NOTAS.md
test_final.png
test.png
calculadora.py
nota.pdf
reporte.pdf
*.png
*.pdf
!skills/**/*.png   # exception: docs/figures we want
!docs/**/*.png

# --- MCP user config (contains secrets like tokens) ---
mcp.json
# mcp.example.json IS committed as a template
