## GITATTRIBUTES FOR WEB PROJECTS
#
# These settings are for any web project using LFS. All known binary
# types are tracked.
#
# Details per file setting:
#   text        These files should be normalized (i.e. convert CRLF to LF).
#   filter=lfs  These files are tracked by LFS.
#
######################################################################

# Auto detect
##   Handle line endings automatically for files detected as
##   text and leave all files detected as binary untouched.
##   This will handle all files NOT defined below.
*                 text=auto

# Source code
*.bash            text eol=lf
*.bat             text eol=crlf
*.cmd             text eol=crlf
*.coffee          text
*.css             text diff=css
*.htm             text diff=html
*.html            text diff=html
*.inc             text
*.ini             text
*.js              text
*.mjs             text
*.cjs             text
*.json            text
*.jsx             text
*.less            text
*.ls              text
*.map             text -diff
*.od              text
*.onlydata        text
*.php             text diff=php
*.pl              text
*.ps1             text eol=crlf
*.py              text diff=python
*.rb              text diff=ruby
*.sass            text
*.scm             text
*.scss            text diff=css
*.sh              text eol=lf
.husky/*          text eol=lf
*.sql             text
*.styl            text
*.tag             text
*.ts              text
*.tsx             text
*.xml             text
*.xhtml           text diff=html

# Docker
Dockerfile        text

# Documentation
*.ipynb           text eol=lf
*.markdown        text diff=markdown
*.md              text diff=markdown
*.mdwn            text diff=markdown
*.mdown           text diff=markdown
*.mkd             text diff=markdown
*.mkdn            text diff=markdown
*.mdtxt           text
*.mdtext          text
*.txt             text
AUTHORS           text
CHANGELOG         text
CHANGES           text
CONTRIBUTING      text
COPYING           text
copyright         text
*COPYRIGHT*       text
INSTALL           text
license           text
LICENSE           text
NEWS              text
readme            text
*README*          text
TODO              text

# Templates
*.dot             text
*.ejs             text
*.erb             text
*.haml            text
*.handlebars      text
*.hbs             text
*.hbt             text
*.jade            text
*.latte           text
*.mustache        text
*.njk             text
*.phtml           text
*.svelte          text
*.tmpl            text
*.tpl             text
*.twig            text
*.vue             text

# Configs
*.cnf             text
*.conf            text
*.config          text
.editorconfig     text
.env              text
.gitattributes    text
.gitconfig        text
.htaccess         text
*.lock            text -diff
package.json      text eol=lf
package-lock.json text eol=lf -diff
pnpm-lock.yaml    text eol=lf -diff
.prettierrc       text
yarn.lock         text -diff
*.toml            text
*.yaml            text
*.yml             text
browserslist      text
Makefile          text
makefile          text
# Fixes syntax highlighting on GitHub to allow comments
tsconfig.json     linguist-language=JSON-with-Comments

# Heroku
Procfile          text

# Graphics
*.ai              filter=lfs diff=lfs merge=lfs -text
*.avif            filter=lfs diff=lfs merge=lfs -text
*.bmp             filter=lfs diff=lfs merge=lfs -text
*.eps             filter=lfs diff=lfs merge=lfs -text
*.gif             filter=lfs diff=lfs merge=lfs -text
*.gifv            filter=lfs diff=lfs merge=lfs -text
*.ico             filter=lfs diff=lfs merge=lfs -text
*.jng             filter=lfs diff=lfs merge=lfs -text
*.jp2             filter=lfs diff=lfs merge=lfs -text
*.jpeg            filter=lfs diff=lfs merge=lfs -text
*.jpg             filter=lfs diff=lfs merge=lfs -text
*.jpx             filter=lfs diff=lfs merge=lfs -text
*.jxl             filter=lfs diff=lfs merge=lfs -text
*.jxr             filter=lfs diff=lfs merge=lfs -text
*.pdf             filter=lfs diff=lfs merge=lfs -text
*.png             filter=lfs diff=lfs merge=lfs -text
*.psb             filter=lfs diff=lfs merge=lfs -text
*.psd             filter=lfs diff=lfs merge=lfs -text
# SVG treated as an asset (binary) by default.
*.svg             text
# If you want to treat it as binary,
# use the following line instead.
# *.svg           filter=lfs diff=lfs merge=lfs -text
*.svgz            filter=lfs diff=lfs merge=lfs -text
*.tif             filter=lfs diff=lfs merge=lfs -text
*.tiff            filter=lfs diff=lfs merge=lfs -text
*.wbmp            filter=lfs diff=lfs merge=lfs -text
*.webp            filter=lfs diff=lfs merge=lfs -text

# Audio
*.kar             filter=lfs diff=lfs merge=lfs -text
*.m4a             filter=lfs diff=lfs merge=lfs -text
*.mid             filter=lfs diff=lfs merge=lfs -text
*.midi            filter=lfs diff=lfs merge=lfs -text
*.mp3             filter=lfs diff=lfs merge=lfs -text
*.ogg             filter=lfs diff=lfs merge=lfs -text
*.ra              filter=lfs diff=lfs merge=lfs -text

# Video
*.3gpp            filter=lfs diff=lfs merge=lfs -text
*.3gp             filter=lfs diff=lfs merge=lfs -text
*.as              filter=lfs diff=lfs merge=lfs -text
*.asf             filter=lfs diff=lfs merge=lfs -text
*.asx             filter=lfs diff=lfs merge=lfs -text
*.avi             filter=lfs diff=lfs merge=lfs -text
*.fla             filter=lfs diff=lfs merge=lfs -text
*.flv             filter=lfs diff=lfs merge=lfs -text
*.m4v             filter=lfs diff=lfs merge=lfs -text
*.mng             filter=lfs diff=lfs merge=lfs -text
*.mov             filter=lfs diff=lfs merge=lfs -text
*.mp4             filter=lfs diff=lfs merge=lfs -text
*.mpeg            filter=lfs diff=lfs merge=lfs -text
*.mpg             filter=lfs diff=lfs merge=lfs -text
*.ogv             filter=lfs diff=lfs merge=lfs -text
*.swc             filter=lfs diff=lfs merge=lfs -text
*.swf             filter=lfs diff=lfs merge=lfs -text
*.webm            filter=lfs diff=lfs merge=lfs -text

# Archives
*.7z              filter=lfs diff=lfs merge=lfs -text
*.gz              filter=lfs diff=lfs merge=lfs -text
*.jar             filter=lfs diff=lfs merge=lfs -text
*.rar             filter=lfs diff=lfs merge=lfs -text
*.tar             filter=lfs diff=lfs merge=lfs -text
*.zip             filter=lfs diff=lfs merge=lfs -text

# Fonts
*.ttf             filter=lfs diff=lfs merge=lfs -text
*.eot             filter=lfs diff=lfs merge=lfs -text
*.otf             filter=lfs diff=lfs merge=lfs -text
*.woff            filter=lfs diff=lfs merge=lfs -text
*.woff2           filter=lfs diff=lfs merge=lfs -text

# Executables
*.exe             filter=lfs diff=lfs merge=lfs -text
*.pyc             filter=lfs diff=lfs merge=lfs -text
# Prevents massive diffs caused by vendored, minified files
**/.yarn/releases/**   filter=lfs diff=lfs merge=lfs -text
**/.yarn/plugins/**    filter=lfs diff=lfs merge=lfs -text

# RC files (like .babelrc or .eslintrc)
*.*rc             text

# Ignore files (like .npmignore or .gitignore)
*.*ignore         text

# Prevents massive diffs from built files
dist/*            filter=lfs diff=lfs merge=lfs -text