gitignore
guarding and linting