eslint-config-trybe-backend
Version:
ESLint shared config used by trybe on Back-end projects
138 lines (137 loc) • 2.46 kB
JSON
{
"root": true,
"extends": [
"airbnb/base",
"plugin:editorconfig/noconflict",
"plugin:mocha/recommended"
],
"plugins": [
"sonarjs",
"editorconfig",
"mocha"
],
"rules": {
"no-console": "off",
"camelcase": [
2,
{
"ignoreDestructuring": true
}
],
"arrow-parens": [
2,
"always"
],
"quotes": [
2,
"single"
],
"implicit-arrow-linebreak": "off",
"consistent-return": "off",
"no-unused-vars": [
"error",
{
"argsIgnorePattern": "^_",
"ignoreRestSiblings": true
}
],
"object-curly-newline": "off",
"max-params": [
"error",
4
],
"max-lines": [
"error",
250
],
"max-lines-per-function": [
"error",
{
"max": 20,
"skipBlankLines": true,
"skipComments": true
}
],
"max-len": [
"error",
{
"code": 100,
"ignoreComments": true
}
],
"complexity": [
"error",
5
],
"import/no-extraneous-dependencies": [
"off"
],
"sonarjs/cognitive-complexity": [
"error",
5
],
"sonarjs/no-one-iteration-loop": [
"error"
],
"sonarjs/no-identical-expressions": [
"error"
],
"sonarjs/no-use-of-empty-return-value": [
"error"
],
"sonarjs/no-extra-arguments": [
"error"
],
"sonarjs/no-identical-conditions": [
"error"
],
"sonarjs/no-collapsible-if": [
"error"
],
"sonarjs/no-collection-size-mischeck": [
"error"
],
"sonarjs/no-duplicate-string": [
"error"
],
"sonarjs/no-duplicated-branches": [
"error"
],
"sonarjs/no-identical-functions": [
"error"
],
"sonarjs/no-redundant-boolean": [
"error"
],
"sonarjs/no-unused-collection": [
"error"
],
"sonarjs/no-useless-catch": [
"error"
],
"sonarjs/prefer-object-literal": [
"error"
],
"sonarjs/prefer-single-boolean-return": [
"error"
],
"sonarjs/no-inverted-boolean-check": [
"error"
]
},
"overrides": [
{
"files": ["**/*.{test,spec}.js"],
"rules": {
"max-lines-per-function": "off",
"prefer-arrow-callback": "off",
"func-names": "off"
}
}
],
"env": {
"browser": false,
"node": true,
"jest": true
}
}