Last active
March 29, 2017 06:46
-
-
Save yyscamper/781d8e0b3c184a77d5af15a3f623dddb to your computer and use it in GitHub Desktop.
ESLint Configuration, based on Airbnb JavaScript Standard, but with some customization
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
env: | |
es6: true | |
node: true | |
parserOptions: | |
ecmaFeatures: | |
experimentalObjectRestSpread: true | |
generators: false | |
objectLiteralDuplicateProperties: false | |
ecmaVersion: 6 | |
sourceType: module | |
plugins: | |
- import | |
rules: | |
accessor-pairs: 'off' | |
array-bracket-spacing: | |
- error | |
- never | |
array-callback-return: error | |
arrow-body-style: | |
- error | |
- as-needed | |
- requireReturnForObjectLiteral: false | |
arrow-parens: | |
- error | |
- as-needed | |
- requireForBlockBody: true | |
arrow-spacing: | |
- error | |
- after: true | |
before: true | |
block-scoped-var: error | |
block-spacing: | |
- error | |
- always | |
brace-style: | |
- error | |
- 1tbs | |
- allowSingleLine: true | |
callback-return: 'off' | |
camelcase: | |
- error | |
- properties: never | |
capitalized-comments: | |
- 'off' | |
- never | |
- block: | |
ignoreConsecutiveComments: true | |
ignoreInlineComments: true | |
ignorePattern: .* | |
line: | |
ignoreConsecutiveComments: true | |
ignoreInlineComments: true | |
ignorePattern: .* | |
class-methods-use-this: | |
- error | |
- exceptMethods: [] | |
comma-dangle: 'off' | |
comma-spacing: | |
- error | |
- after: true | |
before: false | |
comma-style: | |
- error | |
- last | |
complexity: | |
- 'off' | |
- 11 | |
computed-property-spacing: | |
- error | |
- never | |
consistent-return: error | |
consistent-this: 'off' | |
constructor-super: error | |
curly: | |
- error | |
- multi-line | |
default-case: | |
- error | |
- commentPattern: ^no default$ | |
dot-location: | |
- error | |
- property | |
dot-notation: | |
- error | |
- allowKeywords: true | |
eol-last: | |
- error | |
- always | |
eqeqeq: | |
- error | |
- always | |
- 'null': ignore | |
func-call-spacing: | |
- error | |
- never | |
func-name-matching: | |
- 'off' | |
- always | |
- includeCommonJSModuleExports: false | |
func-names: | |
- 'warn' | |
- 'as-needed' | |
func-style: | |
- 'off' | |
- expression | |
generator-star-spacing: | |
- error | |
- after: true | |
before: false | |
global-require: 'off' | |
guard-for-in: error | |
handle-callback-err: 'off' | |
id-blacklist: 'off' | |
id-length: 'off' | |
id-match: 'off' | |
import/default: 'off' | |
import/export: error | |
import/extensions: | |
- error | |
- always | |
- js: never | |
jsx: never | |
import/first: | |
- error | |
- absolute-first | |
import/imports-first: 'off' | |
import/max-dependencies: | |
- 'off' | |
- max: 10 | |
import/named: 'off' | |
import/namespace: 'off' | |
import/newline-after-import: error | |
import/no-absolute-path: error | |
import/no-amd: error | |
import/no-commonjs: 'off' | |
import/no-deprecated: 'off' | |
import/no-duplicates: error | |
import/no-dynamic-require: error | |
import/no-extraneous-dependencies: | |
- error | |
- devDependencies: | |
- test/** | |
- tests/** | |
- spec/** | |
- '**/__tests__/**' | |
- test.js | |
- test-*.js | |
- '**/*.test.js' | |
- '**/*.spec.js' | |
- '**/webpack.config.js' | |
- '**/webpack.config.*.js' | |
- '**/rollup.config.js' | |
- '**/gulpfile.js' | |
- '**/gulpfile.*.js' | |
- '**/Gruntfile' | |
optionalDependencies: false | |
import/no-internal-modules: | |
- 'off' | |
- allow: [] | |
import/no-mutable-exports: error | |
import/no-named-as-default: error | |
import/no-named-as-default-member: error | |
import/no-named-default: error | |
import/no-namespace: 'off' | |
import/no-nodejs-modules: 'off' | |
import/no-restricted-paths: 'off' | |
import/no-unassigned-import: 'off' | |
import/no-unresolved: | |
- error | |
- caseSensitive: true | |
commonjs: true | |
import/no-webpack-loader-syntax: error | |
import/order: | |
- 'off' | |
- groups: | |
- builtin | |
- external | |
- internal | |
- parent | |
- sibling | |
- index | |
newlines-between: never | |
import/prefer-default-export: error | |
import/unambiguous: 'off' | |
indent: | |
- error | |
- 4 | |
- FunctionDeclaration: | |
body: 1 | |
parameters: 1 | |
FunctionExpression: | |
body: 1 | |
parameters: 1 | |
SwitchCase: 1 | |
VariableDeclarator: 1 | |
outerIIFEBody: 1 | |
init-declarations: 'off' | |
jsx-quotes: | |
- 'off' | |
- prefer-double | |
key-spacing: | |
- error | |
- afterColon: true | |
beforeColon: false | |
keyword-spacing: | |
- error | |
- after: true | |
before: true | |
overrides: | |
case: | |
after: true | |
return: | |
after: true | |
throw: | |
after: true | |
line-comment-position: | |
- 'off' | |
- applyDefaultPatterns: true | |
ignorePattern: '' | |
position: above | |
linebreak-style: | |
- error | |
- unix | |
lines-around-comment: 'off' | |
lines-around-directive: | |
- error | |
- after: always | |
before: always | |
max-depth: | |
- 'off' | |
- 4 | |
max-len: | |
- error | |
- 100 | |
- 2 | |
- ignoreComments: false | |
ignoreRegExpLiterals: true | |
ignoreStrings: true | |
ignoreTemplateLiterals: true | |
ignoreUrls: true | |
max-lines: | |
- 'off' | |
- max: 300 | |
skipBlankLines: true | |
skipComments: true | |
max-nested-callbacks: 'off' | |
max-params: | |
- 'off' | |
- 3 | |
max-statements: | |
- 'off' | |
- 10 | |
max-statements-per-line: | |
- 'off' | |
- max: 1 | |
multiline-ternary: | |
- 'off' | |
- never | |
new-cap: | |
- error | |
- capIsNew: false | |
capIsNewExceptions: | |
- Immutable.Map | |
- Immutable.Set | |
- Immutable.List | |
newIsCap: true | |
newIsCapExceptions: [] | |
new-parens: error | |
newline-after-var: 'off' | |
newline-before-return: 'off' | |
newline-per-chained-call: | |
- error | |
- ignoreChainWithDepth: 4 | |
no-alert: warn | |
no-array-constructor: error | |
no-await-in-loop: error | |
no-bitwise: error | |
no-caller: error | |
no-case-declarations: error | |
no-catch-shadow: 'off' | |
no-class-assign: error | |
no-compare-neg-zero: 'off' | |
no-cond-assign: | |
- error | |
- always | |
no-confusing-arrow: | |
- error | |
- allowParens: true | |
no-console: warn | |
no-const-assign: error | |
no-constant-condition: warn | |
no-continue: error | |
no-control-regex: error | |
no-debugger: error | |
no-delete-var: error | |
no-div-regex: 'off' | |
no-dupe-args: error | |
no-dupe-class-members: error | |
no-dupe-keys: error | |
no-duplicate-case: error | |
no-duplicate-imports: 'off' | |
no-else-return: error | |
no-empty: error | |
no-empty-character-class: error | |
no-empty-function: | |
- error | |
- allow: | |
- arrowFunctions | |
- functions | |
- methods | |
no-empty-pattern: error | |
no-eq-null: 'off' | |
no-eval: error | |
no-ex-assign: error | |
no-extend-native: error | |
no-extra-bind: error | |
no-extra-boolean-cast: error | |
no-extra-label: error | |
no-extra-parens: | |
- 'off' | |
- all | |
- conditionalAssign: true | |
nestedBinaryExpressions: false | |
returnAssign: false | |
no-extra-semi: error | |
no-fallthrough: error | |
no-floating-decimal: error | |
no-func-assign: error | |
no-global-assign: | |
- error | |
- exceptions: [] | |
no-implicit-coercion: | |
- 'off' | |
- allow: [] | |
boolean: false | |
number: true | |
string: true | |
no-implicit-globals: 'off' | |
no-implied-eval: error | |
no-inline-comments: 'off' | |
no-inner-declarations: error | |
no-invalid-regexp: error | |
no-invalid-this: 'off' | |
no-irregular-whitespace: error | |
no-iterator: error | |
no-label-var: error | |
no-labels: | |
- error | |
- allowLoop: false | |
allowSwitch: false | |
no-lone-blocks: error | |
no-lonely-if: error | |
no-loop-func: error | |
no-magic-numbers: | |
- 'off' | |
- detectObjects: false | |
enforceConst: true | |
ignore: [] | |
ignoreArrayIndexes: true | |
no-mixed-operators: | |
- error | |
- allowSamePrecedence: false | |
groups: | |
- - + | |
- '-' | |
- '*' | |
- / | |
- '%' | |
- '**' | |
- - '&' | |
- '|' | |
- ^ | |
- '~' | |
- '<<' | |
- '>>' | |
- '>>>' | |
- - == | |
- '!=' | |
- === | |
- '!==' | |
- '>' | |
- '>=' | |
- < | |
- <= | |
- - '&&' | |
- '||' | |
- - in | |
- instanceof | |
no-mixed-requires: | |
- 'off' | |
- false | |
no-mixed-spaces-and-tabs: error | |
no-multi-assign: | |
- error | |
no-multi-spaces: error | |
no-multi-str: error | |
no-multiple-empty-lines: | |
- error | |
- max: 2 | |
maxEOF: 1 | |
no-native-reassign: 'off' | |
no-negated-condition: 'off' | |
no-negated-in-lhs: 'off' | |
no-nested-ternary: error | |
no-new: error | |
no-new-func: error | |
no-new-object: error | |
no-new-require: error | |
no-new-symbol: error | |
no-new-wrappers: error | |
no-obj-calls: error | |
no-octal: error | |
no-octal-escape: error | |
no-param-reassign: 'off' | |
no-path-concat: 'off' | |
no-plusplus: error | |
no-process-env: 'off' | |
no-process-exit: 'off' | |
no-proto: error | |
no-prototype-builtins: error | |
no-redeclare: error | |
no-regex-spaces: error | |
no-restricted-globals: 'off' | |
no-restricted-imports: 'off' | |
no-restricted-modules: 'off' | |
no-restricted-properties: | |
- error | |
- message: arguments.callee is deprecated | |
object: arguments | |
property: callee | |
- message: Please use Object.defineProperty instead. | |
property: __defineGetter__ | |
- message: Please use Object.defineProperty instead. | |
property: __defineSetter__ | |
- message: Use the exponentiation operator (**) instead. | |
object: Math | |
property: pow | |
no-restricted-syntax: | |
- error | |
- ForInStatement | |
- ForOfStatement | |
- LabeledStatement | |
- WithStatement | |
no-return-assign: error | |
no-return-await: error | |
no-script-url: error | |
no-self-assign: error | |
no-self-compare: error | |
no-sequences: error | |
no-shadow: error | |
no-shadow-restricted-names: error | |
no-spaced-func: error | |
no-sparse-arrays: error | |
no-sync: 'off' | |
no-tabs: error | |
no-template-curly-in-string: error | |
no-ternary: 'off' | |
no-this-before-super: error | |
no-throw-literal: error | |
no-trailing-spaces: error | |
no-undef: error | |
no-undef-init: error | |
no-undefined: 'off' | |
no-underscore-dangle: | |
- error | |
- allowAfterThis: false | |
no-unexpected-multiline: error | |
no-unmodified-loop-condition: 'off' | |
no-unneeded-ternary: | |
- error | |
- defaultAssignment: false | |
no-unreachable: error | |
no-unsafe-finally: error | |
no-unsafe-negation: error | |
no-unused-expressions: | |
- error | |
- allowShortCircuit: false | |
allowTaggedTemplates: false | |
allowTernary: false | |
no-unused-labels: error | |
no-unused-vars: | |
- error | |
- args: after-used | |
ignoreRestSiblings: true | |
vars: local | |
no-use-before-define: | |
- error | |
- classes: true | |
functions: true | |
variables: true | |
no-useless-call: 'off' | |
no-useless-computed-key: error | |
no-useless-concat: error | |
no-useless-constructor: error | |
no-useless-escape: error | |
no-useless-rename: | |
- error | |
- ignoreDestructuring: false | |
ignoreExport: false | |
ignoreImport: false | |
no-useless-return: error | |
no-var: 'off' | |
no-void: error | |
no-warning-comments: | |
- 'off' | |
- location: start | |
terms: | |
- todo | |
- fixme | |
- xxx | |
no-whitespace-before-property: error | |
no-with: error | |
nonblock-statement-body-position: 'off' | |
object-curly-newline: | |
- 'off' | |
- ObjectExpression: | |
minProperties: 0 | |
multiline: true | |
ObjectPattern: | |
minProperties: 0 | |
multiline: true | |
object-curly-spacing: | |
- error | |
- always | |
object-property-newline: | |
- error | |
- allowMultiplePropertiesPerLine: true | |
object-shorthand: 'off' | |
one-var: | |
- error | |
- never | |
one-var-declaration-per-line: | |
- error | |
- always | |
operator-assignment: | |
- error | |
- always | |
operator-linebreak: 'off' | |
padded-blocks: | |
- error | |
- never | |
prefer-arrow-callback: | |
- error | |
- allowNamedFunctions: false | |
allowUnboundThis: true | |
prefer-const: | |
- error | |
- destructuring: any | |
ignoreReadBeforeAssign: true | |
prefer-destructuring: | |
- 'off' | |
- array: true | |
object: true | |
- enforceForRenamedProperties: false | |
prefer-numeric-literals: error | |
prefer-promise-reject-errors: | |
- 'off' | |
- allowEmptyReject: true | |
prefer-reflect: 'off' | |
prefer-rest-params: error | |
prefer-spread: error | |
prefer-template: 'off' | |
quote-props: | |
- error | |
- as-needed | |
- keywords: false | |
numbers: false | |
unnecessary: true | |
quotes: | |
- error | |
- single | |
- avoidEscape: true | |
radix: error | |
require-await: 'off' | |
require-jsdoc: 'off' | |
require-yield: error | |
rest-spread-spacing: | |
- error | |
- never | |
semi: | |
- error | |
- always | |
semi-spacing: | |
- error | |
- after: true | |
before: false | |
sort-imports: | |
- 'off' | |
- ignoreCase: false | |
ignoreMemberSort: false | |
memberSyntaxSortOrder: | |
- none | |
- all | |
- multiple | |
- single | |
sort-keys: | |
- 'off' | |
- asc | |
- caseSensitive: false | |
natural: true | |
sort-vars: 'off' | |
space-before-blocks: error | |
space-before-function-paren: | |
- error | |
- anonymous: always | |
asyncArrow: always | |
named: never | |
space-in-parens: | |
- error | |
- never | |
space-infix-ops: error | |
space-unary-ops: | |
- error | |
- nonwords: false | |
overrides: {} | |
words: true | |
spaced-comment: | |
- error | |
- always | |
- block: | |
balanced: false | |
exceptions: | |
- '-' | |
- + | |
markers: | |
- = | |
- '!' | |
line: | |
exceptions: | |
- '-' | |
- + | |
markers: | |
- = | |
- '!' | |
strict: 'off' | |
symbol-description: error | |
template-curly-spacing: error | |
template-tag-spacing: | |
- 'off' | |
- never | |
unicode-bom: | |
- error | |
- never | |
use-isnan: error | |
valid-jsdoc: 'off' | |
valid-typeof: | |
- error | |
- requireStringLiterals: true | |
vars-on-top: error | |
wrap-iife: | |
- error | |
- outside | |
- functionPrototypeMethods: false | |
wrap-regex: 'off' | |
yield-star-spacing: | |
- error | |
- after | |
yoda: error | |
settings: | |
import/core-modules: [] | |
import/extensions: | |
- .js | |
- .jsx | |
import/ignore: | |
- node_modules | |
- \.(coffee|scss|css|less|hbs|svg|json)$ | |
import/resolver: | |
node: | |
extensions: | |
- .js | |
- .json |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment