Skip to content

Commit

Permalink
chore: initial version
Browse files Browse the repository at this point in the history
  • Loading branch information
SimonGolms committed May 30, 2022
0 parents commit 6f54a58
Show file tree
Hide file tree
Showing 155 changed files with 57,215 additions and 0 deletions.
8 changes: 8 additions & 0 deletions .browserslistrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[production]
>0.2%
not dead
not op_mini all

[development]
last 2 edge version
last 2 chrome version
8 changes: 8 additions & 0 deletions .commitlintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/* eslint-disable import/no-unused-modules */
module.exports = {
extends: ['@commitlint/config-conventional'],
// See: https://commitlint.js.org/#/reference-rules
rules: {
'body-max-line-length': [0, 'always', Infinity], // Disabled rule, since the release notes via semantic-release in the commit body message can be appropriately long.
},
};
14 changes: 14 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# editorconfig.org

root = true

[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 2
trim_trailing_whitespace = true

[*.md]
trim_trailing_whitespace = false
14 changes: 14 additions & 0 deletions .env.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Backend
REACT_APP_API_URL="http://localhost:3000/api"

# Azure - SSO
REACT_APP_AZURE_ACTIVE_DIRECTORY_CLIENT_ID=""
REACT_APP_AZURE_ACTIVE_DIRECTORY_TENANT_ID=""

# Optional for (local) development:

## Advanced Configuration for Create-React-App, see: https://create-react-app.dev/docs/advanced-configuration
# Opens Browser, e.g. "brave", "chrome" or "edge"
# BROWSER="/mnt/c/Program\ Files\ \(x86\)/BraveSoftware/Brave-Browser/Application/brave.exe"
# Prevents a conflict with a local running backend, which use port 3000 as well
PORT=8100
120 changes: 120 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
module.exports = {
extends: [
'react-app',
'react-app/jest',
'plugin:react/recommended',
'plugin:import/recommended',
'plugin:import/typescript',
// 'plugin:jest/recommended',
'plugin:jsx-a11y/recommended',
'plugin:sonarjs/recommended',
'plugin:typescript-sort-keys/recommended',
// HINT: prettier must be the last extension to work
'plugin:prettier/recommended',
],
ignorePatterns: ['build', 'docker', 'node_modules', 'openshift', 'public'],
parser: '@typescript-eslint/parser',
plugins: [
'@typescript-eslint',
// 'jest',
'jsx-a11y',
'react-hooks',
'react',
'sonarjs',
'sort-keys-fix',
'typescript-sort-keys',
'no-type-assertion',
// HINT: prettier must be the last plugin to work
'prettier',
],
rules: {
'@typescript-eslint/sort-type-union-intersection-members': 'error',
camelcase: 'warn',
curly: 'error',
'import/no-unused-modules': [
'error',
{
ignoreExports: [
'src/index.tsx',
'src/setupTests.ts',
'src/**/*.d.ts',
'src/**/*.test.ts',
'src/**/*.test.tsx',
'*.ts', // mostly configuration files
'*.js', // mostly configuration files
],
missingExports: true,
src: ['.'],
unusedExports: true,
},
],
'import/order': [
'error',
{
alphabetize: {
caseInsensitive: true,
order: 'asc',
},
groups: ['builtin', 'external', 'internal'],
pathGroups: [
{
group: 'external',
pattern: 'react',
position: 'before',
},
],
pathGroupsExcludedImportTypes: ['react'],
},
],
'import/prefer-default-export': 'off',
'no-restricted-imports': [
'error',
{
patterns: ['@mui/*/*/*', '!@mui/material/test-utils/*'],
},
],
'no-type-assertion/no-type-assertion': 'error',
'prettier/prettier': 'error',
'react/display-name': 'off',
'react/jsx-sort-default-props': 'error',
'react/jsx-sort-props': [
'error',
{
callbacksLast: true,
ignoreCase: true,
noSortAlphabetically: false,
reservedFirst: true,
shorthandFirst: false,
shorthandLast: false,
},
],
'react/prop-types': 'off',
'react/react-in-jsx-scope': 'off',
'react-hooks/exhaustive-deps': 'error',
'react-hooks/rules-of-hooks': 'error',
'sort-imports': [
'error',
{
ignoreCase: true,
ignoreDeclarationSort: true,
ignoreMemberSort: false,
},
],
// Required to fix sort-keys automatically, since this is not done by default.
'sort-keys-fix/sort-keys-fix': [
'error',
'asc',
{
caseSensitive: false,
natural: true,
},
],
},
settings: {
'import/resolver': {
typescript: {
alwaysTryTypes: true,
},
},
},
};
208 changes: 208 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,208 @@
## GITATTRIBUTES FOR WEB PROJECTS
#
# These settings are for any web project.
#
# 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.
#
# Source: https://github.com/Danimoth/gitattributes/blob/master/Web.gitattributes
######################################################################

# 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
*.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
Dockerfile text

# Documentation
*.ipynb text
*.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 -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

# Heroku
Procfile text

# 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
*.avi 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
*.zip binary

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

# Executables
*.exe binary
*.pyc binary

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

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

0 comments on commit 6f54a58

Please sign in to comment.