# Download Tools .gitignore

# ============================================================================
# Python
# ============================================================================

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
*.manifest
*.spec

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/

# Jupyter Notebook
.ipynb_checkpoints

# pyenv
.python-version

# Virtual environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# ============================================================================
# IDE / Editor
# ============================================================================

# VSCode
.vscode/
*.code-workspace

# PyCharm
.idea/
*.iml

# Sublime Text
*.sublime-project
*.sublime-workspace

# Vim
*.swp
*.swo
*~

# ============================================================================
# Operating System
# ============================================================================

# Windows
Thumbs.db
ehthumbs.db
Desktop.ini
$RECYCLE.BIN/
*.lnk

# macOS
.DS_Store
.AppleDouble
.LSOverride
._*

# Linux
*~

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

# Authentication and sensitive configs (keep your personal configs safe!)
# Only .example files will be committed to GitHub
configs/instagram_cookies.json
configs/reddit_cookies.json
configs/twitter_cookies.json
configs/auth_config.json
configs/gallery-dl.conf
configs/gallery-dl-*.conf
configs/yt-dlp.conf
configs/web_scraper/auth_config.json
configs/node_settings.json
*.secret
*.key

# Session files (contain authentication tokens)
nodes/sessions/
*_session.json

# But include template/example configs for users
!configs/*.example
!configs/*-example.*

# Downloaded media and outputs
downloads/
output/
instagram-downloads/
youtube-downloads/
gallery-dl-downloads/
gallery-dl-output/
gallery-dl/
web_scraper_output/
test-downloads/
temp/
tmp/
*.part

# Debug files
debug/
*.html

# Browser and Playwright data
.playwright-mcp/
.history/

# Test outputs
test_output/
test_images/
visual_tests/

# Logs
*.log
logs/
*.out

# Database files
*.db
*.sqlite
*.sqlite3

# ============================================================================
# ComfyUI Specific
# ============================================================================

# ComfyUI generated
comfy_extras/

# Workflow saves (optional - uncomment if you don't want to commit workflows)
# workflows/
# *.json

# ============================================================================
# Development and Documentation
# ============================================================================

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

# Draft documentation
*-draft.*
*-wip.*

# Personal notes
NOTES.txt
TODO-personal.md
scratch/

# Internal documentation (not for public GitHub)
Docs/edit-docs-not-for-github/

# ============================================================================
# Session files
nodes/sessions/*.json

# Archives
# ============================================================================

# Compressed files
*.zip
*.tar.gz
*.rar
*.7z

# ============================================================================
# Specific files to ignore
# ============================================================================

# Batch files that are system-specific
update_instagram_cookies.bat

# Desktop files
desktop.ini

# ============================================================================
# Keep these files (force include)
# ============================================================================

# Force include yt-dlp config templates (safe presets without credentials)
!configs/yt-dlp-hq.conf
!configs/yt-dlp-audio.conf

# Force include all .example files for users to copy
!configs/*.example
