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

# ---- Virtual Environment ----
.venv/
venv/
ENV/

# ---- Data Files (synced via Dropbox, not git) ----
*.parquet
*.pkl
*.db
*.sqlite
*.csv
*.xlsx
*.xls

# ---- Common Data/Output Directories ----
backups/
archive/
legacy/

# ---- Diagnostics Output (keep .py scripts, exclude generated files) ----
diagnostics/*.json
diagnostics/*.csv
diagnostics/*.log
diagnostics/*.parquet
diagnostics/llm_cache/
diagnostics/errors.json
diagnostics/warnings.json

# ---- Generated Output ----
*.log
*.pdf
*.png
outputs/

# ---- JS/Node ----
node_modules/
dist/

# ---- macOS ----
.DS_Store

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

# ---- Testing & Caching ----
.pytest_cache/
.mypy_cache/
htmlcov/
.coverage

# ---- Local Libraries ----
.local_libs/

# ---- Env Files ----
.env
.env.local

# ==== Project-Specific ====

# ---- Secrets (each has a tracked .example copy with values blanked) ----
config/credentials.yml
config/payment_config.yml
config/api_service_config.yml
config/pipeline_config.yml
config/case_studies_config.yml
config/scraper_config.yml
marketing/website/private/sentisift/config.php

# ---- Scraped Data & Browser Profiles (data/ has source code, ignore selectively) ----
data/scrape_comments/scraped_data/
data/scrape_comments/discover_dom/
data/scrape_comments/.auth/
data/scrape_comments/sites/*/snapshots/
data/scrape_comments/sites/*/*.json
data/distributions/

# ---- Model Validation Data ----
model_validation/datasets/
model_validation/cache/
model_validation/validation_*.json
model_validation/optimization_*.json

# ---- Customer API Data ----
customers/

# ---- API Service Data ----
api_service/data/

# ---- Marketing Generated Outputs ----
marketing/marketing_pdfs/
marketing/case_studies/case_study_analysis_pdfs/
marketing/case_studies/case_studies.json
marketing/case_studies/llm_outputs.json
marketing/auto_marketing/auto_marketing.json

# ---- Runtime Files ----
.sentisift
.sentisift.pid
