# Set default behavior to automatically normalize line endings
* text=auto eol=lf

# Declare files that will always have LF line endings on checkout
*.py text eol=lf
*.md text eol=lf
*.txt text eol=lf
*.json text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.xml text eol=lf
*.html text eol=lf
*.css text eol=lf
*.js text eol=lf
*.ts text eol=lf
*.jsx text eol=lf
*.tsx text eol=lf
*.sh text eol=lf
*.bat text eol=crlf
*.cmd text eol=crlf
*.ps1 text eol=crlf

# Configuration files
*.ini text eol=lf
*.cfg text eol=lf
*.conf text eol=lf
*.toml text eol=lf
.gitignore text eol=lf
.gitattributes text eol=lf
LICENSE text eol=lf
README* text eol=lf
Makefile text eol=lf
Dockerfile text eol=lf
requirements*.txt text eol=lf
pyproject.toml text eol=lf
setup.py text eol=lf
setup.cfg text eol=lf

# Denote all files that are truly binary and should not be modified
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.bmp binary
*.tiff binary
*.webp binary
*.svg binary
*.mp4 binary
*.avi binary
*.mov binary
*.mkv binary
*.webm binary
*.flv binary
*.mp3 binary
*.wav binary
*.ogg binary
*.flac binary
*.pdf binary
*.zip binary
*.tar.gz binary
*.7z binary
*.rar binary
*.exe binary
*.dll binary
*.so binary
*.dylib binary
*.a binary
*.lib binary
*.o binary
*.obj binary

# Model files (binary)
*.ckpt binary
*.safetensors binary
*.pt binary
*.pth binary
*.bin binary
*.onnx binary
*.pb binary
*.tflite binary
*.h5 binary
*.pkl binary
*.pickle binary

# Language specific
*.po text eol=lf
*.pot text eol=lf

# Archives
*.tar binary
*.gz binary
*.bz2 binary
*.xz binary

# Fonts
*.ttf binary
*.otf binary
*.woff binary
*.woff2 binary
*.eot binary 