# Dependencies
node_modules/

# Build output
dist/
dist-ssr/

# Environment variables (NEVER commit)
.env
.env.local
.env.*.local
backend/.env

# Python
__pycache__/
*.pyc
*.pyo
backend/venv/
*.egg-info/

# OS files
.DS_Store
Thumbs.db

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

# Logs
*.log
npm-debug.log*

# Lock files (using npm)
bun.lockb

# Content engine output
backend/scripts/output/

# GuessTheMove dedup ledger (local state)
video/props/.guess_ledger.json

# YouTube OAuth credentials (NEVER commit)
backend/scripts/client_secret.json
backend/scripts/youtube_token.json
video/props/.youtube_uploads.json

# TikTok OAuth credentials (NEVER commit)
backend/scripts/tiktok_token.json
video/props/.tiktok_uploads.json

# Agent reports (ephemeral, regenerated nightly)
backend/scripts/agents/reports/*.json

# Astro content hub (generated at build)
content/.astro/
content/dist/

# Misc
*.tsbuildinfo

# Claude dev handoff docs (internal session prompts, not production code)
Context/HANDOFF_POST_MIGRATION.md
Context/HANDOFF_TRADEODDS_MIGRATION.md
Context/PROMPT_PHASE_11A.md
Context/SESSION_PROMPT_RECOMMENDATIONS.md
Context/RECOMMENDATIONS.md
.vercel
.env*.local
.mcp.json
