# Python virtual environment
venv/
env/
ENV/
env.bak/
venv.bak/
.env/
.venv/

# Python cache and compiled files
__pycache__/
*.py[cod]
*$py.class
*.so
*.pyd
*.pyo
*.pyc
*.pyz
*.pyi

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

# Testing
.pytest_cache/
.coverage
htmlcov/
.tox/
.mypy_cache/
.dmypy.json
dmypy.json
.pytest_cache/
coverage.xml
*.cover
*.log

# Jupyter Notebooks
.ipynb_checkpoints/
*.ipynb

# Environment variables
.env
.env.local
.env.*.local

# IDE and editor files
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store
*.iml
.settings/
.project
.classpath
.pydevproject

# Logs and databases
logs/
*.log
*.db
*.sqlite
*.sqlite3

# OS generated files
Thumbs.db
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Desktop.ini

# Backup files
*.bak
*.tmp
*.temp

# Project specific (for your snapshot collector)
snapshots/*.json
!snapshots/.gitkeep  # Optional: keep the directory but not the files

# Output files
output/
data/
*.out

# Security credentials
secrets.py
config.py
credentials.py
*.key
*.pem
*.crt

# For web3 and blockchain projects
*.abi
*.bin
build/
contracts/*.json
!contracts/abi.json

# Type checking
.stubs/

# Profiling data
*.prof
*.gcda
*.gcno

# Docker
.dockerignore
*.dockerfile

# Terraform
*.tfstate
*.tfstate.*
.terraform/

# Node.js (if you have any)
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
