.eslintrc
{
"parser": "babel-eslint",
"parserOptions": {
"ecmaVersion": 6,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true
}
},
"rules": {
"quotes": [
"error",
"single"
],
"semi": ["error", "always"],
"curly": "error",
"object-curly-spacing": ["error", "always"],
"space-unary-ops": [
2, {
"words": true,
"nonwords": false,
"overrides": {
"new": false,
"++": false
}
}],
"spaced-comment": ["error", "always", {
"line": {
"markers": ["/"],
"exceptions": ["-", "+"]
},
"block": {
"markers": ["!"],
"exceptions": ["*"],
"balanced": true
}
}],
"indent": ["error", 2, {
"SwitchCase": 1,
"MemberExpression": 1,
"ArrayExpression": 1,
"ObjectExpression": 1
}],
"newline-per-chained-call": ["error", { "ignoreChainWithDepth": 2 }],
"space-before-function-paren": ["error", {
"anonymous": "always",
"named": "always",
"asyncArrow": "always"
}],
"no-multiple-empty-lines": ["error", {
"max": 1
}],
"max-len": ["warn", 80],
"max-depth": ["error", 2],
"max-lines": ["error", {"max": 350, "skipComments": true}],
"max-statements": ["error", 80],
"eol-last": ["error", "always"],
"linebreak-style": ["error", "unix"],
"brace-style": ["error", "stroustrup"],
"require-jsdoc": ["warn", {
"require": {
"FunctionDeclaration": true,
"MethodDefinition": true,
"ClassDeclaration": true
}
}],
"valid-jsdoc": ["error", {
"prefer": {
"arg": "param",
"return": "returns"
},
"preferType": {
"Boolean": "boolean",
"Number": "number",
"object": "Object",
"String": "string"
},
"requireReturn": false,
"requireReturnType": true,
"requireParamDescription": false,
"requireReturnDescription": false
}]
}
}