# 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/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

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

# Translations
*.mo
*.pot

# Environments
.env
.env.local
.env.*.local
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Editors / IDEs
.idea/
.vscode/
*.swp
*.swo
*~
.project
.pydevproject
.settings/

# OS
.DS_Store
Thumbs.db
desktop.ini

# Project-specific
data/
!data/.gitkeep
!data/README.md
*.db
*.db-journal
*.sqlite
*.sqlite3
.cache/
cache/
output/
wordlists-out/
# Generated wordlist runs. The committed sample is kept explicitly.
out/
!out/example.json

# Logs
*.log
logs/

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

# Ruff
.ruff_cache/

# Jupyter
.ipynb_checkpoints
*.ipynb

# spaCy models
*.tar.gz

# Secrets baseline diffs (keep baseline, ignore audit artifacts)
.secrets.audit

# Docker volumes
docker-volumes/

# uv
.python-version
