Comparison of StandardJS and XO ESLint rules

Contents

Rules both agree on (13)

Key:

Green
Set
Red
Not set
Orange
Has differences
Rule Description Error level Options
StandardJSXOStandardJSXO
arrow-spacing enforce consistent spacing before and after the arrow in arrow functions error error Both are set to:
[
  {
    "before": true,
    "after": true
  }
]
comma-spacing enforce consistent spacing before and after commas error error Both are set to:
[
  {
    "before": false,
    "after": true
  }
]
comma-style enforce consistent comma style error error Both are set to:
[
  "last"
]
dot-location enforce consistent newlines before and after dots error error Both are set to:
[
  "property"
]
func-call-spacing require or disallow spacing between function identifiers and their invocations error error Both are set to:
[
  "never"
]
key-spacing enforce consistent spacing between keys and values in object literal properties error error Both are set to:
[
  {
    "beforeColon": false,
    "afterColon": true
  }
]
rest-spread-spacing enforce spacing between rest and spread operators and their expressions error error Both are set to:
[
  "never"
]
semi-spacing enforce consistent spacing before and after semicolons error error Both are set to:
[
  {
    "before": false,
    "after": true
  }
]
space-before-blocks enforce consistent spacing before blocks error error Both are set to:
[
  "always"
]
space-in-parens enforce consistent spacing inside parentheses error error Both are set to:
[
  "never"
]
template-tag-spacing require or disallow spacing between template tags and their literals error error Both are set to:
[
  "never"
]
unicode-bom require or disallow Unicode byte order mark (BOM) error error Both are set to:
[
  "never"
]
yield-star-spacing require or disallow spacing around the `*` in `yield*` expressions error error Both are set to:
[
  "both"
]

Rules both set but with different error levels (1)

Key:

Green
Set
Red
Not set
Orange
Has differences
Rule Description Error level Options
StandardJSXOStandardJSXO
handle-callback-err require error handling in callbacks error warn
[
  "^(err|error)$"
]

    
        

Rules both set but with different options (35)

Key:

Green
Set
Red
Not set
Orange
Has differences
Rule Description Error level Options
StandardJSXOStandardJSXO
brace-style enforce consistent brace style for blocks error error
[
  "1tbs",
  {
    "allowSingleLine": true
  }
]
[
  "1tbs",
  {
    "allowSingleLine": false
  }
]
camelcase enforce camelcase naming convention error error
[
  {
    "properties": "never"
  }
]
[
  {
    "properties": "always"
  }
]
comma-dangle require or disallow trailing commas error error
[
  {
    "arrays": "never",
    "objects": "never",
    "imports": "never",
    "exports": "never",
    "functions": "never"
  }
]
[
  "never"
]
curly enforce consistent brace style for all control statements error error
[
  "multi-line"
]

    
        
eqeqeq require the use of `===` and `!==` error error
[
  "always",
  {
    "null": "ignore"
  }
]

    
        
generator-star-spacing enforce consistent spacing around `*` operators in generator functions error error
[
  {
    "before": true,
    "after": true
  }
]
[
  "both"
]
handle-callback-err require error handling in callbacks error warn
[
  "^(err|error)$"
]

    
        
indent enforce consistent indentation error error
[
  2,
  {
    "SwitchCase": 1,
    "VariableDeclarator": 1,
    "outerIIFEBody": 1,
    "MemberExpression": 1,
    "FunctionDeclaration": {
      "parameters": 1,
      "body": 1
    },
    "FunctionExpression": {
      "parameters": 1,
      "body": 1
    },
    "CallExpression": {
      "arguments": 1
    },
    "ArrayExpression": 1,
    "ObjectExpression": 1,
    "ImportDeclaration": 1,
    "flatTernaryExpressions": false,
    "ignoreComments": false
  }
]
[
  "tab",
  {
    "SwitchCase": 1
  }
]
keyword-spacing enforce consistent spacing before and after keywords error error
[
  {
    "before": true,
    "after": true
  }
]

    
        
new-cap require constructor names to begin with a capital letter error error
[
  {
    "newIsCap": true,
    "capIsNew": false
  }
]
[
  {
    "newIsCap": true,
    "capIsNew": true
  }
]
no-constant-condition disallow constant expressions in conditions error error
[
  {
    "checkLoops": false
  }
]

    
        
no-inner-declarations disallow variable or `function` declarations in nested blocks error error
[
  "functions"
]

    
        
no-labels disallow labeled statements error error
[
  {
    "allowLoop": false,
    "allowSwitch": false
  }
]

    
        
no-mixed-operators disallow mixed binary operators error error
[
  {
    "groups": [
      [
        "==",
        "!=",
        "===",
        "!==",
        ">",
        ">=",
        "<",
        "<="
      ],
      [
        "&&",
        "||"
      ],
      [
        "in",
        "instanceof"
      ]
    ],
    "allowSamePrecedence": true
  }
]

    
        
no-multiple-empty-lines disallow multiple empty lines error error
[
  {
    "max": 1,
    "maxEOF": 0
  }
]
[
  {
    "max": 1
  }
]
no-return-assign disallow assignment operators in `return` statements error error
[
  "except-parens"
]
[
  "always"
]
no-self-assign disallow assignments where both sides are exactly the same error error

    
        
[
  {
    "props": true
  }
]
no-undef disallow the use of undeclared variables unless mentioned in `/*global */` comments error error

    
        
[
  {
    "typeof": true
  }
]
no-unneeded-ternary disallow ternary operators when simpler alternatives exist error error
[
  {
    "defaultAssignment": false
  }
]

    
        
no-unused-expressions disallow unused expressions error error
[
  {
    "allowShortCircuit": true,
    "allowTernary": true,
    "allowTaggedTemplates": true
  }
]

    
        
no-unused-vars disallow unused variables error error
[
  {
    "vars": "all",
    "args": "none",
    "ignoreRestSiblings": true
  }
]
[
  {
    "ignoreRestSiblings": true,
    "argsIgnorePattern": "^_$"
  }
]
no-use-before-define disallow the use of variables before they are defined error error
[
  {
    "functions": false,
    "classes": false,
    "variables": false
  }
]
[
  "nofunc"
]
one-var enforce variables to be declared either together or separately in functions error error
[
  {
    "initialized": "never"
  }
]
[
  "never"
]
operator-linebreak enforce consistent linebreak style for operators error error
[
  "after",
  {
    "overrides": {
      "?": "before",
      ":": "before"
    }
  }
]
[
  "after"
]
padded-blocks require or disallow padding within blocks error error
[
  {
    "blocks": "never",
    "switches": "never",
    "classes": "never"
  }
]
[
  "never"
]
prefer-promise-reject-errors require using Error objects as Promise rejection reasons error error

    
        
[
  {
    "allowEmptyReject": true
  }
]
quotes enforce the consistent use of either backticks, double, or single quotes error error
[
  "single",
  {
    "avoidEscape": true,
    "allowTemplateLiterals": true
  }
]
[
  "single",
  {
    "allowTemplateLiterals": true
  }
]
semi require or disallow semicolons instead of ASI error error
[
  "never"
]
[
  "always"
]
space-before-function-paren enforce consistent spacing before `function` definition opening parenthesis error error
[
  "always"
]
[
  {
    "anonymous": "always",
    "named": "never",
    "asyncArrow": "always"
  }
]
space-unary-ops enforce consistent spacing before or after unary operators error error
[
  {
    "words": true,
    "nonwords": false
  }
]

    
        
spaced-comment enforce consistent spacing after the `//` or `/*` in a comment error error
[
  "always",
  {
    "line": {
      "markers": [
        "*package",
        "!",
        "/",
        ",",
        "="
      ]
    },
    "block": {
      "balanced": true,
      "markers": [
        "*package",
        "!",
        ",",
        ":",
        "::",
        "flow-include"
      ],
      "exceptions": [
        "*"
      ]
    }
  }
]
[
  "always",
  {
    "line": {
      "exceptions": [
        "-",
        "+",
        "*"
      ],
      "markers": [
        "!",
        "/"
      ]
    },
    "block": {
      "exceptions": [
        "-",
        "+",
        "*"
      ],
      "markers": [
        "!",
        "*"
      ],
      "balanced": true
    }
  }
]
template-curly-spacing require or disallow spacing around embedded expressions of template strings error error
[
  "never"
]

    
        
valid-typeof enforce comparing `typeof` expressions against valid strings error error
[
  {
    "requireStringLiterals": true
  }
]
[
  {
    "requireStringLiterals": false
  }
]
wrap-iife require parentheses around immediate `function` invocations error error
[
  "any",
  {
    "functionPrototypeMethods": true
  }
]
[
  "inside",
  {
    "functionPrototypeMethods": true
  }
]
yoda require or disallow "Yoda" conditions error error
[
  "never"
]

    
        

All ESlint rules (264)

Key:

Green
Set
Red
Not set
Orange
Has differences
Rule Description Error level Options
StandardJSXOStandardJSXO
accessor-pairs enforce getter and setter pairs in objects error error

    
        

    
        
array-bracket-newline enforce linebreaks after opening and before closing array brackets undefined error
undefined
[
  "consistent"
]
array-bracket-spacing enforce consistent spacing inside array brackets undefined error
undefined
[
  "never"
]
array-callback-return enforce `return` statements in callbacks of array methods undefined error
undefined

    
        
array-element-newline enforce line breaks after each array element undefined error
undefined
[
  "consistent"
]
arrow-body-style require braces around arrow function bodies undefined undefined
undefined
undefined
arrow-parens require parentheses around arrow function arguments undefined error
undefined
[
  "as-needed"
]
arrow-spacing enforce consistent spacing before and after the arrow in arrow functions error error Both are set to:
[
  {
    "before": true,
    "after": true
  }
]
block-scoped-var enforce the use of variables within the scope they are defined undefined error
undefined

    
        
block-spacing disallow or enforce spaces inside of blocks after opening block and before closing block error undefined
[
  "always"
]
undefined
brace-style enforce consistent brace style for blocks error error
[
  "1tbs",
  {
    "allowSingleLine": true
  }
]
[
  "1tbs",
  {
    "allowSingleLine": false
  }
]
callback-return require `return` statements after callbacks undefined undefined
undefined
undefined
camelcase enforce camelcase naming convention error error
[
  {
    "properties": "never"
  }
]
[
  {
    "properties": "always"
  }
]
capitalized-comments enforce or disallow capitalization of the first letter of a comment undefined error
undefined
[
  "always",
  {
    "ignorePattern": "pragma|ignore|prettier-ignore",
    "ignoreInlineComments": true,
    "ignoreConsecutiveComments": true
  }
]
class-methods-use-this enforce that class methods utilize `this` undefined undefined
undefined
undefined
comma-dangle require or disallow trailing commas error error
[
  {
    "arrays": "never",
    "objects": "never",
    "imports": "never",
    "exports": "never",
    "functions": "never"
  }
]
[
  "never"
]
comma-spacing enforce consistent spacing before and after commas error error Both are set to:
[
  {
    "before": false,
    "after": true
  }
]
comma-style enforce consistent comma style error error Both are set to:
[
  "last"
]
complexity enforce a maximum cyclomatic complexity allowed in a program undefined warn
undefined

    
        
computed-property-spacing enforce consistent spacing inside computed property brackets undefined error
undefined
[
  "never"
]
consistent-return require `return` statements to either always or never specify values undefined undefined
undefined
undefined
consistent-this enforce consistent naming when capturing the current execution context undefined undefined
undefined
undefined
constructor-super require `super()` calls in constructors error error

    
        

    
        
curly enforce consistent brace style for all control statements error error
[
  "multi-line"
]

    
        
default-case require `default` cases in `switch` statements undefined error
undefined

    
        
dot-location enforce consistent newlines before and after dots error error Both are set to:
[
  "property"
]
dot-notation enforce dot notation whenever possible undefined error
undefined

    
        
eol-last require or disallow newline at the end of files error error

    
        

    
        
eqeqeq require the use of `===` and `!==` error error
[
  "always",
  {
    "null": "ignore"
  }
]

    
        
for-direction enforce "for" loop update clause moving the counter in the right direction. undefined error
undefined

    
        
func-call-spacing require or disallow spacing between function identifiers and their invocations error error Both are set to:
[
  "never"
]
func-name-matching require function names to match the name of the variable or property to which they are assigned undefined error
undefined
[
  {
    "considerPropertyDescriptor": true
  }
]
func-names require or disallow named `function` expressions undefined error
undefined
[
  "never"
]
func-style enforce the consistent use of either `function` declarations or expressions undefined undefined
undefined
undefined
function-paren-newline enforce consistent line breaks inside function parentheses undefined undefined
undefined
undefined
generator-star-spacing enforce consistent spacing around `*` operators in generator functions error error
[
  {
    "before": true,
    "after": true
  }
]
[
  "both"
]
getter-return enforce `return` statements in getters undefined error
undefined

    
        
global-require require `require()` calls to be placed at top-level module scope undefined undefined
undefined
undefined
guard-for-in require `for-in` loops to include an `if` statement undefined error
undefined

    
        
handle-callback-err require error handling in callbacks error warn
[
  "^(err|error)$"
]

    
        
id-blacklist disallow specified identifiers undefined undefined
undefined
undefined
id-length enforce minimum and maximum identifier lengths undefined undefined
undefined
undefined
id-match require identifiers to match a specified regular expression undefined undefined
undefined
undefined
implicit-arrow-linebreak enforce the location of arrow function bodies undefined undefined
undefined
undefined
indent-legacy enforce consistent indentation undefined undefined
undefined
undefined
indent enforce consistent indentation error error
[
  2,
  {
    "SwitchCase": 1,
    "VariableDeclarator": 1,
    "outerIIFEBody": 1,
    "MemberExpression": 1,
    "FunctionDeclaration": {
      "parameters": 1,
      "body": 1
    },
    "FunctionExpression": {
      "parameters": 1,
      "body": 1
    },
    "CallExpression": {
      "arguments": 1
    },
    "ArrayExpression": 1,
    "ObjectExpression": 1,
    "ImportDeclaration": 1,
    "flatTernaryExpressions": false,
    "ignoreComments": false
  }
]
[
  "tab",
  {
    "SwitchCase": 1
  }
]
init-declarations require or disallow initialization in variable declarations undefined undefined
undefined
undefined
jsx-quotes enforce the consistent use of either double or single quotes in JSX attributes undefined error
undefined

    
        
key-spacing enforce consistent spacing between keys and values in object literal properties error error Both are set to:
[
  {
    "beforeColon": false,
    "afterColon": true
  }
]
keyword-spacing enforce consistent spacing before and after keywords error error
[
  {
    "before": true,
    "after": true
  }
]

    
        
line-comment-position enforce position of line comments undefined undefined
undefined
undefined
linebreak-style enforce consistent linebreak style undefined error
undefined
[
  "unix"
]
lines-around-comment require empty lines around comments undefined undefined
undefined
undefined
lines-around-directive require or disallow newlines around directives undefined undefined
undefined
undefined
lines-between-class-members require or disallow an empty line between class members undefined error
undefined
[
  "always"
]
max-classes-per-file enforce a maximum number of classes per file undefined undefined
undefined
undefined
max-depth enforce a maximum depth that blocks can be nested undefined warn
undefined

    
        
max-len enforce a maximum line length undefined undefined
undefined
undefined
max-lines-per-function enforce a maximum number of line of code in a function undefined undefined
undefined
undefined
max-lines enforce a maximum number of lines per file undefined undefined
undefined
undefined
max-nested-callbacks enforce a maximum depth that callbacks can be nested undefined warn
undefined
[
  4
]
max-params enforce a maximum number of parameters in function definitions undefined warn
undefined
[
  {
    "max": 4
  }
]
max-statements-per-line enforce a maximum number of statements allowed per line undefined error
undefined

    
        
max-statements enforce a maximum number of statements allowed in function blocks undefined undefined
undefined
undefined
multiline-comment-style enforce a particular style for multiline comments undefined undefined
undefined
undefined
multiline-ternary enforce newlines between operands of ternary expressions undefined undefined
undefined
undefined
new-cap require constructor names to begin with a capital letter error error
[
  {
    "newIsCap": true,
    "capIsNew": false
  }
]
[
  {
    "newIsCap": true,
    "capIsNew": true
  }
]
new-parens require parentheses when invoking a constructor with no arguments error error

    
        

    
        
newline-after-var require or disallow an empty line after variable declarations undefined undefined
undefined
undefined
newline-before-return require an empty line before `return` statements undefined undefined
undefined
undefined
newline-per-chained-call require a newline after each call in a method chain undefined undefined
undefined
undefined
no-alert disallow the use of `alert`, `confirm`, and `prompt` undefined error
undefined

    
        
no-array-constructor disallow `Array` constructors error error

    
        

    
        
no-async-promise-executor disallow using an async function as a Promise executor undefined error
undefined

    
        
no-await-in-loop disallow `await` inside of loops undefined error
undefined

    
        
no-bitwise disallow bitwise operators undefined undefined
undefined
undefined
no-buffer-constructor disallow use of the `Buffer()` constructor undefined error
undefined

    
        
no-caller disallow the use of `arguments.caller` or `arguments.callee` error error

    
        

    
        
no-case-declarations disallow lexical declarations in case clauses undefined error
undefined

    
        
no-catch-shadow disallow `catch` clause parameters from shadowing variables in the outer scope undefined undefined
undefined
undefined
no-class-assign disallow reassigning class members error error

    
        

    
        
no-compare-neg-zero disallow comparing against -0 error error

    
        

    
        
no-cond-assign disallow assignment operators in conditional expressions error error

    
        

    
        
no-confusing-arrow disallow arrow functions where they could be confused with comparisons undefined undefined
undefined
undefined
no-console disallow the use of `console` undefined undefined
undefined
undefined
no-const-assign disallow reassigning `const` variables error error

    
        

    
        
no-constant-condition disallow constant expressions in conditions error error
[
  {
    "checkLoops": false
  }
]

    
        
no-continue disallow `continue` statements undefined undefined
undefined
undefined
no-control-regex disallow control characters in regular expressions error error

    
        

    
        
no-debugger disallow the use of `debugger` error error

    
        

    
        
no-delete-var disallow deleting variables error error

    
        

    
        
no-div-regex disallow division operators explicitly at the beginning of regular expressions undefined error
undefined

    
        
no-dupe-args disallow duplicate arguments in `function` definitions error error

    
        

    
        
no-dupe-class-members disallow duplicate class members error error

    
        

    
        
no-dupe-keys disallow duplicate keys in object literals error error

    
        

    
        
no-duplicate-case disallow duplicate case labels error error

    
        

    
        
no-duplicate-imports disallow duplicate module imports undefined undefined
undefined
undefined
no-else-return disallow `else` blocks after `return` statements in `if` statements undefined error
undefined
[
  {
    "allowElseIf": false
  }
]
no-empty-character-class disallow empty character classes in regular expressions error error

    
        

    
        
no-empty-function disallow empty functions undefined undefined
undefined
undefined
no-empty-pattern disallow empty destructuring patterns error error

    
        

    
        
no-empty disallow empty block statements undefined error
undefined
[
  {
    "allowEmptyCatch": true
  }
]
no-eq-null disallow `null` comparisons without type-checking operators undefined error
undefined

    
        
no-eval disallow the use of `eval()` error error

    
        

    
        
no-ex-assign disallow reassigning exceptions in `catch` clauses error error

    
        

    
        
no-extend-native disallow extending native types error error

    
        

    
        
no-extra-bind disallow unnecessary calls to `.bind()` error error

    
        

    
        
no-extra-boolean-cast disallow unnecessary boolean casts error error

    
        

    
        
no-extra-label disallow unnecessary labels undefined error
undefined

    
        
no-extra-parens disallow unnecessary parentheses error undefined
[
  "functions"
]
undefined
no-extra-semi disallow unnecessary semicolons undefined error
undefined

    
        
no-fallthrough disallow fallthrough of `case` statements error error

    
        

    
        
no-floating-decimal disallow leading or trailing decimal points in numeric literals error error

    
        

    
        
no-func-assign disallow reassigning `function` declarations error error

    
        

    
        
no-global-assign disallow assignments to native objects or read-only global variables error error

    
        

    
        
no-implicit-coercion disallow shorthand type conversions undefined error
undefined

    
        
no-implicit-globals disallow variable and `function` declarations in the global scope undefined error
undefined

    
        
no-implied-eval disallow the use of `eval()`-like methods error error

    
        

    
        
no-inline-comments disallow inline comments after code undefined undefined
undefined
undefined
no-inner-declarations disallow variable or `function` declarations in nested blocks error error
[
  "functions"
]

    
        
no-invalid-regexp disallow invalid regular expression strings in `RegExp` constructors error error

    
        

    
        
no-invalid-this disallow `this` keywords outside of classes or class-like objects undefined undefined
undefined
undefined
no-irregular-whitespace disallow irregular whitespace outside of strings and comments error error

    
        

    
        
no-iterator disallow the use of the `__iterator__` property error error

    
        

    
        
no-label-var disallow labels that share a name with a variable error error

    
        

    
        
no-labels disallow labeled statements error error
[
  {
    "allowLoop": false,
    "allowSwitch": false
  }
]

    
        
no-lone-blocks disallow unnecessary nested blocks error error

    
        

    
        
no-lonely-if disallow `if` statements as the only statement in `else` blocks undefined error
undefined

    
        
no-loop-func disallow `function` declarations and expressions inside loop statements undefined undefined
undefined
undefined
no-magic-numbers disallow magic numbers undefined undefined
undefined
undefined
no-misleading-character-class disallow characters which are made with multiple code points in character class syntax undefined error
undefined

    
        
no-mixed-operators disallow mixed binary operators error error
[
  {
    "groups": [
      [
        "==",
        "!=",
        "===",
        "!==",
        ">",
        ">=",
        "<",
        "<="
      ],
      [
        "&&",
        "||"
      ],
      [
        "in",
        "instanceof"
      ]
    ],
    "allowSamePrecedence": true
  }
]

    
        
no-mixed-requires disallow `require` calls to be mixed with regular variable declarations undefined error
undefined
[
  {
    "grouping": true,
    "allowCall": true
  }
]
no-mixed-spaces-and-tabs disallow mixed spaces and tabs for indentation error error

    
        

    
        
no-multi-assign disallow use of chained assignment expressions undefined error
undefined

    
        
no-multi-spaces disallow multiple spaces error error

    
        

    
        
no-multi-str disallow multiline strings error error

    
        

    
        
no-multiple-empty-lines disallow multiple empty lines error error
[
  {
    "max": 1,
    "maxEOF": 0
  }
]
[
  {
    "max": 1
  }
]
no-native-reassign disallow assignments to native objects or read-only global variables undefined undefined
undefined
undefined
no-negated-condition disallow negated conditions undefined error
undefined

    
        
no-negated-in-lhs disallow negating the left operand in `in` expressions error undefined

    
        
undefined
no-nested-ternary disallow nested ternary expressions undefined undefined
undefined
undefined
no-new-func disallow `new` operators with the `Function` object error error

    
        

    
        
no-new-object disallow `Object` constructors error error

    
        

    
        
no-new-require disallow `new` operators with calls to `require` error error

    
        

    
        
no-new-symbol disallow `new` operators with the `Symbol` object error error

    
        

    
        
no-new-wrappers disallow `new` operators with the `String`, `Number`, and `Boolean` objects error error

    
        

    
        
no-new disallow `new` operators outside of assignments or comparisons error error

    
        

    
        
no-obj-calls disallow calling global object properties as functions error error

    
        

    
        
no-octal-escape disallow octal escape sequences in string literals error error

    
        

    
        
no-octal disallow octal literals error error

    
        

    
        
no-param-reassign disallow reassigning `function` parameters undefined undefined
undefined
undefined
no-path-concat disallow string concatenation with `__dirname` and `__filename` error error

    
        

    
        
no-plusplus disallow the unary operators `++` and `--` undefined undefined
undefined
undefined
no-process-env disallow the use of `process.env` undefined undefined
undefined
undefined
no-process-exit disallow the use of `process.exit()` undefined undefined
undefined
undefined
no-proto disallow the use of the `__proto__` property error error

    
        

    
        
no-prototype-builtins disallow calling some `Object.prototype` methods directly on objects undefined error
undefined

    
        
no-redeclare disallow variable redeclaration error error

    
        

    
        
no-regex-spaces disallow multiple spaces in regular expressions error error

    
        

    
        
no-restricted-globals disallow specified global variables undefined error
undefined
[
  "event"
]
no-restricted-imports disallow specified modules when loaded by `import` undefined error
undefined
[
  "domain",
  "freelist",
  "smalloc",
  "sys",
  "colors"
]
no-restricted-modules disallow specified modules when loaded by `require` undefined error
undefined
[
  "domain",
  "freelist",
  "smalloc",
  "sys",
  "colors"
]
no-restricted-properties disallow certain properties on certain objects undefined undefined
undefined
undefined
no-restricted-syntax disallow specified syntax undefined error
undefined
[
  "WithStatement"
]
no-return-assign disallow assignment operators in `return` statements error error
[
  "except-parens"
]
[
  "always"
]
no-return-await disallow unnecessary `return await` error error

    
        

    
        
no-script-url disallow `javascript:` urls undefined error
undefined

    
        
no-self-assign disallow assignments where both sides are exactly the same error error

    
        
[
  {
    "props": true
  }
]
no-self-compare disallow comparisons where both sides are exactly the same error error

    
        

    
        
no-sequences disallow comma operators error error

    
        

    
        
no-shadow-restricted-names disallow identifiers from shadowing restricted names error error

    
        

    
        
no-shadow disallow variable declarations from shadowing variables declared in the outer scope undefined undefined
undefined
undefined
no-spaced-func disallow spacing between function identifiers and their applications (deprecated) undefined undefined
undefined
undefined
no-sparse-arrays disallow sparse arrays error error

    
        

    
        
no-sync disallow synchronous methods undefined undefined
undefined
undefined
no-tabs disallow all tabs error undefined

    
        
undefined
no-template-curly-in-string disallow template literal placeholder syntax in regular strings error error

    
        

    
        
no-ternary disallow ternary operators undefined undefined
undefined
undefined
no-this-before-super disallow `this`/`super` before calling `super()` in constructors error error

    
        

    
        
no-throw-literal disallow throwing literals as exceptions error error

    
        

    
        
no-trailing-spaces disallow trailing whitespace at the end of lines error error

    
        

    
        
no-undef-init disallow initializing variables to `undefined` error error

    
        

    
        
no-undef disallow the use of undeclared variables unless mentioned in `/*global */` comments error error

    
        
[
  {
    "typeof": true
  }
]
no-undefined disallow the use of `undefined` as an identifier undefined undefined
undefined
undefined
no-underscore-dangle disallow dangling underscores in identifiers undefined undefined
undefined
undefined
no-unexpected-multiline disallow confusing multiline expressions error error

    
        

    
        
no-unmodified-loop-condition disallow unmodified loop conditions error error

    
        

    
        
no-unneeded-ternary disallow ternary operators when simpler alternatives exist error error
[
  {
    "defaultAssignment": false
  }
]

    
        
no-unreachable disallow unreachable code after `return`, `throw`, `continue`, and `break` statements error error

    
        

    
        
no-unsafe-finally disallow control flow statements in `finally` blocks error error

    
        

    
        
no-unsafe-negation disallow negating the left operand of relational operators error error

    
        

    
        
no-unused-expressions disallow unused expressions error error
[
  {
    "allowShortCircuit": true,
    "allowTernary": true,
    "allowTaggedTemplates": true
  }
]

    
        
no-unused-labels disallow unused labels undefined error
undefined

    
        
no-unused-vars disallow unused variables error error
[
  {
    "vars": "all",
    "args": "none",
    "ignoreRestSiblings": true
  }
]
[
  {
    "ignoreRestSiblings": true,
    "argsIgnorePattern": "^_$"
  }
]
no-use-before-define disallow the use of variables before they are defined error error
[
  {
    "functions": false,
    "classes": false,
    "variables": false
  }
]
[
  "nofunc"
]
no-useless-call disallow unnecessary calls to `.call()` and `.apply()` error error

    
        

    
        
no-useless-computed-key disallow unnecessary computed property keys in object literals error error

    
        

    
        
no-useless-concat disallow unnecessary concatenation of literals or template literals undefined error
undefined

    
        
no-useless-constructor disallow unnecessary constructors error error

    
        

    
        
no-useless-escape disallow unnecessary escape characters error error

    
        

    
        
no-useless-rename disallow renaming import, export, and destructured assignments to the same name error error

    
        

    
        
no-useless-return disallow redundant return statements error error

    
        

    
        
no-var require `let` or `const` instead of `var` undefined undefined
undefined
undefined
no-void disallow `void` operators undefined error
undefined

    
        
no-warning-comments disallow specified warning terms in comments undefined warn
undefined

    
        
no-whitespace-before-property disallow whitespace before properties error error

    
        

    
        
no-with disallow `with` statements error error

    
        

    
        
nonblock-statement-body-position enforce the location of single-line statements undefined undefined
undefined
undefined
object-curly-newline enforce consistent line breaks inside braces undefined undefined
undefined
undefined
object-curly-spacing enforce consistent spacing inside braces undefined error
undefined
[
  "never"
]
object-property-newline enforce placing object properties on separate lines error undefined
[
  {
    "allowMultiplePropertiesPerLine": true
  }
]
undefined
object-shorthand require or disallow method and property shorthand syntax for object literals undefined undefined
undefined
undefined
one-var-declaration-per-line require or disallow newlines around variable declarations undefined error
undefined

    
        
one-var enforce variables to be declared either together or separately in functions error error
[
  {
    "initialized": "never"
  }
]
[
  "never"
]
operator-assignment require or disallow assignment operator shorthand where possible undefined error
undefined
[
  "always"
]
operator-linebreak enforce consistent linebreak style for operators error error
[
  "after",
  {
    "overrides": {
      "?": "before",
      ":": "before"
    }
  }
]
[
  "after"
]
padded-blocks require or disallow padding within blocks error error
[
  {
    "blocks": "never",
    "switches": "never",
    "classes": "never"
  }
]
[
  "never"
]
padding-line-between-statements require or disallow padding lines between statements undefined undefined
undefined
undefined
prefer-arrow-callback require using arrow functions for callbacks undefined undefined
undefined
undefined
prefer-const require `const` declarations for variables that are never reassigned after declared undefined undefined
undefined
undefined
prefer-destructuring require destructuring from arrays and/or objects undefined undefined
undefined
undefined
prefer-numeric-literals disallow `parseInt()` and `Number.parseInt()` in favor of binary, octal, and hexadecimal literals undefined undefined
undefined
undefined
prefer-object-spread disallow using Object.assign with an object literal as the first argument and prefer the use of object spread instead. undefined undefined
undefined
undefined
prefer-promise-reject-errors require using Error objects as Promise rejection reasons error error

    
        
[
  {
    "allowEmptyReject": true
  }
]
prefer-reflect require `Reflect` methods where applicable undefined undefined
undefined
undefined
prefer-rest-params require rest parameters instead of `arguments` undefined undefined
undefined
undefined
prefer-spread require spread operators instead of `.apply()` undefined undefined
undefined
undefined
prefer-template require template literals instead of string concatenation undefined undefined
undefined
undefined
quote-props require quotes around object literal property names undefined error
undefined
[
  "as-needed"
]
quotes enforce the consistent use of either backticks, double, or single quotes error error
[
  "single",
  {
    "avoidEscape": true,
    "allowTemplateLiterals": true
  }
]
[
  "single",
  {
    "allowTemplateLiterals": true
  }
]
radix enforce the consistent use of the radix argument when using `parseInt()` undefined error
undefined

    
        
require-atomic-updates disallow assignments that can lead to race conditions due to usage of `await` or `yield` undefined error
undefined

    
        
require-await disallow async functions which have no `await` expression undefined undefined
undefined
undefined
require-jsdoc require JSDoc comments undefined undefined
undefined
undefined
require-unicode-regexp enforce the use of `u` flag on RegExp undefined undefined
undefined
undefined
require-yield require generator functions to contain `yield` undefined error
undefined

    
        
rest-spread-spacing enforce spacing between rest and spread operators and their expressions error error Both are set to:
[
  "never"
]
semi-spacing enforce consistent spacing before and after semicolons error error Both are set to:
[
  {
    "before": false,
    "after": true
  }
]
semi-style enforce location of semicolons undefined error
undefined
[
  "last"
]
semi require or disallow semicolons instead of ASI error error
[
  "never"
]
[
  "always"
]
sort-imports enforce sorted import declarations within modules undefined undefined
undefined
undefined
sort-keys require object keys to be sorted undefined undefined
undefined
undefined
sort-vars require variables within the same declaration block to be sorted undefined undefined
undefined
undefined
space-before-blocks enforce consistent spacing before blocks error error Both are set to:
[
  "always"
]
space-before-function-paren enforce consistent spacing before `function` definition opening parenthesis error error
[
  "always"
]
[
  {
    "anonymous": "always",
    "named": "never",
    "asyncArrow": "always"
  }
]
space-in-parens enforce consistent spacing inside parentheses error error Both are set to:
[
  "never"
]
space-infix-ops require spacing around infix operators error error

    
        

    
        
space-unary-ops enforce consistent spacing before or after unary operators error error
[
  {
    "words": true,
    "nonwords": false
  }
]

    
        
spaced-comment enforce consistent spacing after the `//` or `/*` in a comment error error
[
  "always",
  {
    "line": {
      "markers": [
        "*package",
        "!",
        "/",
        ",",
        "="
      ]
    },
    "block": {
      "balanced": true,
      "markers": [
        "*package",
        "!",
        ",",
        ":",
        "::",
        "flow-include"
      ],
      "exceptions": [
        "*"
      ]
    }
  }
]
[
  "always",
  {
    "line": {
      "exceptions": [
        "-",
        "+",
        "*"
      ],
      "markers": [
        "!",
        "/"
      ]
    },
    "block": {
      "exceptions": [
        "-",
        "+",
        "*"
      ],
      "markers": [
        "!",
        "*"
      ],
      "balanced": true
    }
  }
]
strict require or disallow strict mode directives undefined undefined
undefined
undefined
switch-colon-spacing enforce spacing around colons of switch statements undefined error
undefined
[
  {
    "after": true,
    "before": false
  }
]
symbol-description require symbol descriptions error error

    
        

    
        
template-curly-spacing require or disallow spacing around embedded expressions of template strings error error
[
  "never"
]

    
        
template-tag-spacing require or disallow spacing between template tags and their literals error error Both are set to:
[
  "never"
]
unicode-bom require or disallow Unicode byte order mark (BOM) error error Both are set to:
[
  "never"
]
use-isnan require calls to `isNaN()` when checking for `NaN` error error

    
        

    
        
valid-jsdoc enforce valid JSDoc comments undefined warn
undefined
[
  {
    "requireReturn": false,
    "requireParamDescription": true,
    "requireReturnDescription": true
  }
]
valid-typeof enforce comparing `typeof` expressions against valid strings error error
[
  {
    "requireStringLiterals": true
  }
]
[
  {
    "requireStringLiterals": false
  }
]
vars-on-top require `var` declarations be placed at the top of their containing scope undefined undefined
undefined
undefined
wrap-iife require parentheses around immediate `function` invocations error error
[
  "any",
  {
    "functionPrototypeMethods": true
  }
]
[
  "inside",
  {
    "functionPrototypeMethods": true
  }
]
wrap-regex require parenthesis around regex literals undefined undefined
undefined
undefined
yield-star-spacing require or disallow spacing around the `*` in `yield*` expressions error error Both are set to:
[
  "both"
]
yoda require or disallow "Yoda" conditions error error
[
  "never"
]