# Allow only known root-level entries; everything else is blocked.
# This prevents accidental commits of test folders, scratch files, etc.
/*
!/src
!/tests
!/docs
!/tools
!/.gitignore
!/.readthedocs.yaml
!/pyproject.toml
!/README.md
!/LICENSE
!/NOTICE
!/CREDITS

# Scratch / dev files that sometimes appear at root (belt-and-suspenders)
*.xlsm
*.tmp
*.tmp.*

# Python build and packaging
__pycache__/
*.py[cod]
*.egg-info/
dist/
build/
*.egg
*.whl
*.tar.gz

# setuptools-scm generated version file
src/rivia/_version.py

# Testing
.pytest_cache/
.coverage
htmlcov/

# Type checking and linting
.mypy_cache/
.ruff_cache/

# Virtual environments
.venv/
venv/

# Sphinx build output
docs/_build/
docs/api/generated/

# IDE
*.swp
*.swo

# OS
*.DS_Store

# Project-specific
archive/
CLAUDE.md
.claude
