From 1a371f0d1b0eff8df9abe5a2fd34d7b2e87fedd4 Mon Sep 17 00:00:00 2001
From: Fabrice Gangler <fabrice.gangler@adullact.org>
Date: Wed, 29 May 2024 22:07:02 +0200
Subject: [PATCH] chore: add .gitignore, .gitattributes and .editorconfig

---
 .editorconfig  |  30 +++++++
 .gitattributes | 226 +++++++++++++++++++++++++++++++++++++++++++++++++
 .gitignore     |  39 +++++++++
 3 files changed, 295 insertions(+)
 create mode 100644 .editorconfig
 create mode 100644 .gitattributes
 create mode 100644 .gitignore

diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..0d28953
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,30 @@
+# This file is for unifying the coding style
+# for different editors and IDEs.
+#
+# More information at http://editorconfig.org/
+##############################################
+
+root = true
+
+##############################################
+#      default charset
+#    + 4 space indentation
+#    + Unix-style newlines
+#    + ensure file ends with a newline when saving
+#    + remove any whitespace characters preceding newline characters
+##############################################
+[*]
+charset      = utf-8
+indent_style = space
+indent_size  = 4
+end_of_line  = lf
+insert_final_newline     = true
+trim_trailing_whitespace = true
+
+# Mardown files
+[*.md]
+indent_size = 2
+
+# Yaml files ---> Gitlab CI
+# [*.yml]
+# indent_size = 4
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..c8b729f
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,226 @@
+## GITATTRIBUTES FOR WEB PROJECTS
+#
+# These settings are for any web project.
+# https://github.com/alexkaratarakis/gitattributes/blob/master/Web.gitattributes
+#
+# Details per file setting:
+#   text    These files should be normalized (i.e. convert CRLF to LF).
+#   binary  These files are binary and should be left untouched.
+#
+# Note that binary is a macro for -text -diff.
+######################################################################
+
+# 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
+*                 text eol=lf
+
+# Source code
+*.bash            text eol=lf
+*.bat             text eol=crlf
+*.cmd             text eol=crlf
+*.coffee          text
+*.css             text
+*.htm             text diff=html
+*.html            text diff=html
+*.inc             text
+*.ini             text
+*.js              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
+*.sql             text
+*.styl            text
+*.tag             text
+*.ts              text
+*.tsx             text
+*.xml             text
+*.xhtml           text diff=html
+
+# Docker
+*.dockerignore    text
+Dockerfile        text
+
+# delimited text file
+*.csv             text
+*.tab             text
+*.tsv             text
+
+# Documentation
+*.ipynb           text
+*.markdown        text
+*.md              text
+*.mdwn            text
+*.mdown           text
+*.mkd             text
+*.mkdn            text
+*.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
+*.haml            text
+*.handlebars      text
+*.hbs             text
+*.hbt             text
+*.jade            text
+*.latte           text
+*.mustache        text
+*.njk             text
+*.phtml           text
+*.tmpl            text
+*.tpl             text
+*.twig            text
+*.vue             text
+
+# Linters
+.csslintrc        text
+.eslintrc         text
+.eslintignore     text
+.htmlhintrc       text
+.jscsrc           text
+.jshintrc         text
+.jshintignore     text
+.stylelintrc      text
+
+# Configs
+*.bowerrc         text
+*.cnf             text
+*.conf            text
+*.config          text
+.babelrc          text
+.browserslistrc   text
+.editorconfig     text
+.env              text
+.gitattributes    text
+.gitconfig        text
+.htaccess         text
+.mocharc          text
+.nycrc            text
+.prettierrc       text
+.prettierignore   text
+*.lock            text
+package-lock.json text -diff
+*.npmignore       text
+*.toml            text
+*.yaml            text
+*.yml             text
+browserslist      text
+Makefile          text
+makefile          text
+
+# Heroku
+Procfile          text
+.slugignore       text
+
+# PHP archive
+*.phar            binary
+
+# Graphics
+*.ai              binary
+*.bmp             binary
+*.eps             binary
+*.gif             binary
+*.gifv            binary
+*.ico             binary
+*.jng             binary
+*.jp2             binary
+*.jpg             binary
+*.jpeg            binary
+*.jpx             binary
+*.jxr             binary
+*.pdf             binary
+*.png             binary
+*.psb             binary
+*.psd             binary
+# SVG treated as an asset (binary) by default.
+*.svg             text
+# If you want to treat it as binary,
+# use the following line instead.
+# *.svg           binary
+*.svgz            binary
+*.tif             binary
+*.tiff            binary
+*.wbmp            binary
+*.webp            binary
+
+# Audio
+*.kar             binary
+*.m4a             binary
+*.mid             binary
+*.midi            binary
+*.mp3             binary
+*.ogg             binary
+*.ra              binary
+
+# Video
+*.3gpp            binary
+*.3gp             binary
+*.as              binary
+*.asf             binary
+*.asx             binary
+*.fla             binary
+*.flv             binary
+*.m4v             binary
+*.mng             binary
+*.mov             binary
+*.mp4             binary
+*.mpeg            binary
+*.mpg             binary
+*.ogv             binary
+*.swc             binary
+*.swf             binary
+*.webm            binary
+
+# Archives
+*.7z              binary
+*.gz              binary
+*.jar             binary
+*.rar             binary
+*.tar             binary
+*.tar.gz          binary
+*.tar.bz2         binary
+*.zip             binary
+*.bz2             binary
+
+# Fonts
+*.ttf             binary
+*.eot             binary
+*.otf             binary
+*.woff            binary
+*.woff2           binary
+
+# Executables
+*.exe             binary
+*.pyc             binary
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..b93e123
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,39 @@
+##### Report files
+documentation/auto-generated-documentation/php_static-analysis_phpmd
+documentation/auto-generated-documentation/php_static-analysis_psalm
+documentation/auto-generated-documentation/tests_phpunit
+documentation/auto-generated-documentation/tests_infection
+
+##### Log / cache files
+*.log
+*.cache
+
+##### PHP Tooling
+.phive/
+.php-cs-fixer.cache
+phpmd.baseline.xml
+
+##### Vagrant VM
+.vagrant
+
+##### IDE / Text editor
+
+# Intellij
+.idea
+*.iml
+
+# saved files
+*~
+*.bak
+*.swp
+*.backup
+
+##### GIT
+
+# Git - Merge temp file
+*.orig
+
+# git shortlog -s -n
+#   file for map author and committer names and email addresses
+#   to canonical real names and email addresses
+/.mailmap
-- 
GitLab