# Normalize all text files to LF regardless of platform or core.autocrlf.
# This catch-all must come first; binary rules below override it.
* text=auto eol=lf

# Source files
*.py text eol=lf diff=python
*.pyi text eol=lf
*.pyx text eol=lf

# Docs & assets
*.md text eol=lf diff=markdown
*.rst text eol=lf
*.svg text eol=lf

# Config
*.yml text eol=lf
*.yaml text eol=lf
*.toml text eol=lf
*.json text eol=lf
*.ini text eol=lf
*.cfg text eol=lf

# Shell scripts stay LF even on Windows
*.sh text eol=lf

# Windows scripts
*.bat text eol=crlf
*.ps1 text eol=crlf

# Databases (binary)
*.db binary
*.db-shm binary
*.db-wal binary
*.sqlite binary
*.sqlite3 binary
*.sqlite3-shm binary
*.sqlite3-wal binary

# Images (binary)
*.png binary
*.gif binary
*.jpg binary
*.jpeg binary
*.ico binary

# VCS hygiene
LICENSE text eol=lf
