# Database files
db.sqlite3
*.sqlite3

# Dependencies
node_modules/
frontend/node_modules/
backend/node_modules/
backend/venv/
backend/env/
backend/__pycache__/
backend/**/__pycache__/
*.pyc
*.pyo
*.pyd

# Build outputs
frontend/build/
frontend/dist/
backend/dist/
*.egg-info/

# Locally rendered PDFs (build artifacts of paper/render_pdfs.sh)
# The official manuscript PDFs (paper/paper.pdf, paper/plos_compbio/manuscript.pdf)
# are still tracked; these *_rendered.pdf are throwaway re-renders.
paper/*_rendered.pdf
paper/**/*_rendered.pdf

# Environment variables
.env
.env.local
.env.development.local
.env.test.local
.env.production
.env.production.local
backend/.env
frontend/.env

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

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

# Temporary files
*.tmp
*.temp
.claude/

# Test reports (keep structure, not reports)
ENDPOINT_TEST_REPORT_*.json
test_report_*.json
*_test_report_*.json
frontend_test_report_*.json
validation_report.json
phase2_performance_baseline.json

# OS
.DS_Store
Thumbs.db

# Build artifacts
*.pyc
__pycache__/
*.so
*.egg
*.egg-info
dist/
build/

# Session Notes & Development Documentation
# Excludes internal development notes, session summaries, and status reports
# while preserving committed documentation (DEPLOYMENT_GUIDE.md, etc.)
*_COMPLETE.md
*_SESSION*.md
*_REPORT.md
*_PLAN.md
*_GUIDE.md
*_SUMMARY.md
*_CHECKLIST.md
*_ROADMAP.md
*_ANALYSIS.md
*_VERDICT.md
*_SYNTHESIS.md
*_VERIFICATION.md
*_OUTLINE.md
*_ANNOUNCEMENT*.md
*_SCRIPT*.md
*_PACKAGE*.md
*_PROTOCOL*.md
*_AUDIT.md
*_PROGRESS.md
NEXT_SESSION*
README_FOR_*.md
START_HERE_*.md
HONEST_*.md
QUICK_DEMO_*.md
TECHNICAL_WHITEPAPER_*.md
LAUNCH_ANNOUNCEMENT*.md
VISION_AND_ROADMAP*.md
frontend/*_COMPLETE.md
frontend/*_PROGRESS.md

# Note: Committed documentation is preserved:
# - DEPLOYMENT_GUIDE.md (root, already committed)
# - docs/api-integration-guide.md (subdirectory)
# - frontend/INTEGRATION_TESTS_README.md (specific name)
# - frontend/QUICK_TEST_GUIDE.md (specific name)

# Internal documentation archive (session logs - optional exclusion)
# docs/archive/session_logs/

# Release preparation files (can be removed after release)
RELEASE_PREPARATION_COMPLETE.md

# LaTeX auxiliary files
*.aux
*.bbl
*.blg
*.log
*.out
*.toc
*.lof
*.lot
*.fls
*.fdb_latexmk
*.synctex.gz

# Exception: Include JSS submission package
!paper/JSS_SUBMISSION/
!paper/JSS_SUBMISSION/**

# Internal planning docs (not for public repo)
paper/plos_compbio/IMPLEMENTATION_TRACKER.md
paper/plos_compbio/SUBMISSION_ASSESSMENT.md
paper/plos_compbio/FEATURE_PLAN.md
