# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

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

# uv
.uv/

# PyInstaller
*.manifest
*.spec

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

# Jupyter Notebook
.ipynb_checkpoints
*.ipynb

# IPython
profile_default/
ipython_config.py

# pyenv
.python-version

# Type checking
.mypy_cache/
.dmypy.json
dmypy.json
.pyre/
.pytype/

# IDEs and Editors
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store

# Project-specific
# Downloaded replay files
dota2/
*.dem
*.dem.bz2

# Cached constants - committed to repo for CI
# data/constants/*.json

# Temp/test files
test_*.py
!tests/test_*.py
scratch/
tmp/

# Logs
*.log
logs/

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

# MCP-specific
.mcp/

# MkDocs build output
site/

# Temp architecture docs
v2-architecture.md

# Windows Zone.Identifier metadata files
*:Zone.Identifier

# Data directories (keep structure, ignore contents)
data/replays/
data/temp/
.data/

# Pro scene cache files (auto-generated from OpenDota API)
data/pro_scene/pro_players.json
data/pro_scene/teams.json
data/pro_scene/leagues.json
