Active rules (285)

RuleStatusConfiguration
@stylistic/array-bracket-spacing @stylistic
Enforce consistent spacing inside array brackets
warn
[
  "never"
]
@stylistic/arrow-spacing @stylistic
Enforce consistent spacing before and after the arrow in arrow functions
warn
[
  {
    "before": true,
    "after": true
  }
]
@stylistic/block-spacing @stylistic
Disallow or enforce spaces inside of blocks after opening block and before closing block
warn
[
  "always"
]
@stylistic/comma-dangle @stylistic
Require or disallow trailing commas
warn
[
  {
    "arrays": "always-multiline",
    "objects": "always-multiline",
    "imports": "always-multiline",
    "exports": "always-multiline",
    "functions": "always-multiline",
    "enums": "always-multiline",
    "generics": "always-multiline",
    "tuples": "always-multiline"
  }
]
@stylistic/comma-spacing @stylistic
Enforce consistent spacing before and after commas
warn
[
  {
    "before": false,
    "after": true
  }
]
@stylistic/comma-style @stylistic
Enforce consistent comma style
warn
[
  "last"
]
@stylistic/computed-property-spacing @stylistic
Enforce consistent spacing inside computed property brackets
warn
[
  "never",
  {
    "enforceForClassMembers": true
  }
]
@stylistic/dot-location @stylistic
Enforce consistent newlines before and after dots
warn
[
  "property"
]
@stylistic/eol-last @stylistic
Require or disallow newline at the end of files
warn
[
  "always"
]
@stylistic/function-call-argument-newline @stylistic
Enforce line breaks between arguments of a function call
warn
[
  "consistent"
]
@stylistic/function-call-spacing @stylistic
Require or disallow spacing between function identifiers and their invocations
warn
[
  "never"
]
@stylistic/indent @stylistic
Enforce consistent indentation
warn
[
  4,
  {
    "SwitchCase": 1,
    "flatTernaryExpressions": false,
    "ignoredNodes": []
  }
]
@stylistic/jsx-quotes @stylistic
Enforce the consistent use of either double or single quotes in JSX attributes
warn
[
  "prefer-double"
]
@stylistic/key-spacing @stylistic
Enforce consistent spacing between property names and type annotations in types and interfaces
warn
[
  {}
]
@stylistic/keyword-spacing @stylistic
Enforce consistent spacing before and after keywords
warn
[
  {
    "before": true,
    "after": true,
    "overrides": {}
  }
]
@stylistic/lines-between-class-members @stylistic
Require or disallow an empty line between class members
warn
[
  "always",
  {
    "exceptAfterOverload": true,
    "exceptAfterSingleLine": true
  }
]
@stylistic/max-len @stylistic
Enforce a maximum line length
warn
[
  140,
  4
]
@stylistic/member-delimiter-style @stylistic
Require a specific member delimiter style for interfaces and type literals
warn
[
  {
    "multiline": {
      "delimiter": "semi",
      "requireLast": true
    },
    "singleline": {
      "delimiter": "semi",
      "requireLast": false
    },
    "multilineDetection": "brackets"
  }
]
@stylistic/newline-per-chained-call @stylistic
Require a newline after each call in a method chain
warn
[
  {
    "ignoreChainWithDepth": 3
  }
]
@stylistic/no-extra-semi @stylistic
Disallow unnecessary semicolons
warn
 - 
@stylistic/no-floating-decimal @stylistic
Disallow leading or trailing decimal points in numeric literals
warn
 - 
@stylistic/no-mixed-spaces-and-tabs @stylistic
Disallow mixed spaces and tabs for indentation
warn
[
  false
]
@stylistic/no-multi-spaces @stylistic
Disallow multiple spaces
warn
[
  {
    "exceptions": {
      "Property": true,
      "ImportAttribute": true
    },
    "ignoreEOLComments": false,
    "includeTabs": true
  }
]
@stylistic/no-multiple-empty-lines @stylistic
Disallow multiple empty lines
warn
[
  {
    "max": 1
  }
]
@stylistic/no-tabs @stylistic
Disallow all tabs
warn
[
  {
    "allowIndentationTabs": false
  }
]
@stylistic/no-trailing-spaces @stylistic
Disallow trailing whitespace at the end of lines
warn
[
  {
    "skipBlankLines": false,
    "ignoreComments": false
  }
]
@stylistic/no-whitespace-before-property @stylistic
Disallow whitespace before properties
warn
 - 
@stylistic/object-curly-spacing @stylistic
Enforce consistent spacing inside braces
warn
[
  "always"
]
@stylistic/padded-blocks @stylistic
Require or disallow padding within blocks
warn
[
  {
    "blocks": "never",
    "classes": "always",
    "switches": "never"
  },
  {
    "allowSingleLineBlocks": false
  }
]
@stylistic/quote-props @stylistic
Require quotes around object literal, type literal, interfaces and enums property names
warn
[
  "as-needed"
]
@stylistic/quotes @stylistic
Enforce the consistent use of either backticks, double, or single quotes
warn
[
  "single",
  {
    "allowTemplateLiterals": "never",
    "avoidEscape": true,
    "ignoreStringLiterals": false
  }
]
@stylistic/rest-spread-spacing @stylistic
Enforce spacing between rest and spread operators and their expressions
warn
[
  "never"
]
@stylistic/semi @stylistic
Require or disallow semicolons instead of ASI
warn
[
  "always"
]
@stylistic/semi-spacing @stylistic
Enforce consistent spacing before and after semicolons
warn
[
  {
    "before": false,
    "after": true
  }
]
@stylistic/space-before-blocks @stylistic
Enforce consistent spacing before blocks
warn
[
  "always"
]
@stylistic/space-before-function-paren @stylistic
Enforce consistent spacing before function parenthesis
warn
[
  {
    "anonymous": "always",
    "named": "never"
  }
]
@stylistic/space-in-parens @stylistic
Enforce consistent spacing inside parentheses
warn
[
  "never"
]
@stylistic/template-curly-spacing @stylistic
Require or disallow spacing around embedded expressions of template strings
warn
[
  "never"
]
@stylistic/template-tag-spacing @stylistic
Require or disallow spacing between template tags and their literals
warn
[
  "never"
]
@stylistic/type-annotation-spacing @stylistic
Require consistent spacing around type annotations
warn
[
  {}
]
@stylistic/wrap-iife @stylistic
Require parentheses around immediate `function` invocations
warn
[
  "outside",
  {
    "functionPrototypeMethods": false
  }
]
@typescript-eslint/adjacent-overload-signatures @typescript-eslint
Require that function overload signatures be consecutive
warn
 - 
@typescript-eslint/array-type @typescript-eslint
Require consistently using either `T[]` or `Array<T>` for arrays
warn
[
  {
    "default": "array-simple"
  }
]
@typescript-eslint/ban-ts-comment @typescript-eslint
Disallow `@ts-<directive>` comments or require descriptions after directives
warn
 - 
@typescript-eslint/consistent-type-assertions @typescript-eslint
Enforce consistent usage of type assertions
warn
[
  {
    "assertionStyle": "as"
  }
]
@typescript-eslint/consistent-type-imports @typescript-eslint
Enforce consistent usage of type imports
warn
[
  {
    "prefer": "type-imports",
    "fixStyle": "inline-type-imports",
    "disallowTypeAnnotations": false
  }
]
@typescript-eslint/default-param-last @typescript-eslint
Enforce default parameters to be last
error
 - 
@typescript-eslint/no-array-constructor @typescript-eslint
Disallow generic `Array` constructors
error
 - 
@typescript-eslint/no-dupe-class-members @typescript-eslint
Disallow duplicate class members
error
 - 
@typescript-eslint/no-duplicate-type-constituents @typescript-eslint
Disallow duplicate constituents of union or intersection types
warn
 - 
@typescript-eslint/no-empty-function @typescript-eslint
Disallow empty functions
warn
[
  {
    "allow": []
  }
]
@typescript-eslint/no-explicit-any @typescript-eslint
Disallow the `any` type
warn
[
  {
    "ignoreRestArgs": true
  }
]
@typescript-eslint/no-extra-non-null-assertion @typescript-eslint
Disallow extra non-null assertions
warn
 - 
@typescript-eslint/no-for-in-array @typescript-eslint
Disallow iterating over an array with a for-in loop
error
 - 
@typescript-eslint/no-implied-eval @typescript-eslint
Disallow the use of `eval()`-like functions
error
 - 
@typescript-eslint/no-inferrable-types @typescript-eslint
Disallow explicit type declarations for variables or parameters initialized to a number, string, or boolean
warn
[
  {
    "ignoreParameters": true,
    "ignoreProperties": true
  }
]
@typescript-eslint/no-misused-new @typescript-eslint
Enforce valid definition of `new` and `constructor`
error
 - 
@typescript-eslint/no-misused-promises @typescript-eslint
Disallow Promises in places not designed to handle them
error
[
  {
    "checksVoidReturn": false
  }
]
@typescript-eslint/no-non-null-asserted-optional-chain @typescript-eslint
Disallow non-null assertions after an optional chain expression
warn
 - 
@typescript-eslint/no-redeclare @typescript-eslint
Disallow variable redeclaration
error
 - 
@typescript-eslint/no-require-imports @typescript-eslint
Disallow invocation of `require()`
warn
 - 
@typescript-eslint/no-shadow @typescript-eslint
Disallow variable declarations from shadowing variables declared in the outer scope
warn
[
  {
    "ignoreOnInitialization": true
  }
]
@typescript-eslint/no-this-alias @typescript-eslint
Disallow aliasing `this`
warn
 - 
@typescript-eslint/no-unnecessary-qualifier @typescript-eslint
Disallow unnecessary namespace qualifiers
warn
 - 
@typescript-eslint/no-unnecessary-type-arguments @typescript-eslint
Disallow type arguments that are equal to the default
warn
 - 
@typescript-eslint/no-unused-expressions @typescript-eslint
Disallow unused expressions
warn
[
  {
    "allowShortCircuit": false,
    "allowTaggedTemplates": false,
    "allowTernary": true
  }
]
@typescript-eslint/no-unused-vars @typescript-eslint
Disallow unused variables
warn
[
  {
    "ignoreRestSiblings": true
  }
]
@typescript-eslint/no-use-before-define @typescript-eslint
Disallow the use of variables before they are defined
warn
[
  {
    "functions": false,
    "classes": false,
    "enums": true,
    "variables": true,
    "typedefs": false
  }
]
@typescript-eslint/no-useless-constructor @typescript-eslint
Disallow unnecessary constructors
warn
 - 
@typescript-eslint/only-throw-error @typescript-eslint
Disallow throwing non-`Error` values as exceptions
warn
 - 
@typescript-eslint/prefer-as-const @typescript-eslint
Enforce the use of `as const` over literal type
warn
 - 
@typescript-eslint/prefer-for-of @typescript-eslint
Enforce the use of `for-of` loop over the standard `for` loop where possible
warn
 - 
@typescript-eslint/prefer-includes @typescript-eslint
Enforce `includes` method over `indexOf` method
warn
 - 
@typescript-eslint/prefer-namespace-keyword @typescript-eslint
Require using `namespace` keyword over `module` keyword to declare custom TypeScript modules
error
 - 
@typescript-eslint/prefer-optional-chain @typescript-eslint
Enforce using concise optional chain expressions instead of chained logical ands, negated logical ors, or empty objects
warn
 - 
@typescript-eslint/prefer-string-starts-ends-with @typescript-eslint
Enforce using `String#startsWith` and `String#endsWith` over other equivalent methods of checking substrings
warn
 - 
@typescript-eslint/require-await @typescript-eslint
Disallow async functions which do not return promises and have no `await` expression
error
 - 
@typescript-eslint/triple-slash-reference @typescript-eslint
Disallow certain triple slash directives in favor of ES6-style import declarations
error
 - 
accessor-pairs eslint
Enforce getter and setter pairs in objects and classes
error
[
  {
    "enforceForTSTypes": false,
    "enforceForClassMembers": true,
    "getWithoutSet": false,
    "setWithoutGet": true
  }
]
array-callback-return eslint
Enforce `return` statements in callbacks of array methods
error
[
  {
    "allowImplicit": false,
    "checkForEach": false,
    "allowVoid": false
  }
]
arrow-body-style eslint
Require braces around arrow function bodies
warn
[
  "as-needed"
]
constructor-super eslint
Require `super()` calls in constructors
error
 - 
curly eslint
Enforce consistent brace style for all control statements
warn
[
  "all"
]
eqeqeq eslint
Require the use of `===` and `!==`
warn
 - 
for-direction eslint
Enforce `for` loop update clause moving the counter in the right direction
error
 - 
func-name-matching eslint
Require function names to match the name of the variable or property to which they are assigned
warn
 - 
func-names eslint
Require or disallow named `function` expressions
warn
[
  "always",
  {}
]
getter-return eslint
Enforce `return` statements in getters
error
[
  {
    "allowImplicit": true
  }
]
grouped-accessor-pairs eslint
Require grouped accessor pairs in object literals and classes
warn
[
  "anyOrder",
  {
    "enforceForTSTypes": false
  }
]
guard-for-in eslint
Require `for-in` loops to include an `if` statement
warn
 - 
jest/consistent-test-it jest
Enforce `test` and `it` usage conventions
error
[
  {
    "fn": "test",
    "withinDescribe": "it"
  }
]
jest/no-commented-out-tests jest
Disallow commented out tests
error
 - 
jest/no-conditional-expect jest
Disallow calling `expect` conditionally
warn
 - 
jest/no-disabled-tests jest
Disallow disabled tests
warn
 - 
jest/no-duplicate-hooks jest
Disallow duplicate setup and teardown hooks
error
 - 
jest/no-export jest
Disallow using `exports` in files containing tests
error
 - 
jest/no-focused-tests jest
Disallow focused tests
warn
 - 
jest/no-identical-title jest
Disallow identical titles
error
 - 
jest/no-jasmine-globals jest
Disallow Jasmine globals
error
 - 
jest/no-mocks-import jest
Disallow manually importing from `__mocks__`
error
 - 
jest/no-restricted-matchers jest
Disallow specific matchers & modifiers
warn
[
  {
    "toBeTruthy": "Avoid `toBeTruthy`",
    "toBeFalsy": "Avoid `toBeFalsy`"
  }
]
jest/no-standalone-expect jest
Disallow using `expect` outside of `it` or `test` blocks
error
 - 
jest/no-test-prefixes jest
Require using `.only` and `.skip` over `f` and `x`
warn
 - 
jest/prefer-hooks-on-top jest
Suggest having hooks before any test cases
warn
 - 
jest/prefer-lowercase-title jest
Enforce lowercase test names
warn
[
  {
    "ignore": [
      "describe"
    ],
    "ignoreTopLevelDescribe": false,
    "ignoreTodos": false
  }
]
jest/prefer-to-be jest
Suggest using `toBe()` for primitive literals
warn
 - 
jest/prefer-to-contain jest
Suggest using `toContain()`
warn
 - 
jest/prefer-to-have-length jest
Suggest using `toHaveLength()`
warn
 - 
jest/prefer-todo jest
Suggest using `test.todo`
warn
 - 
jest/require-top-level-describe jest
Require test cases and hooks to be inside a `describe` block
warn
 - 
jest/valid-describe-callback jest
Enforce valid `describe()` callback
error
 - 
jest/valid-expect jest
Enforce valid `expect()` usage
error
 - 
jest/valid-expect-in-promise jest
Require promises that have expectations in their chain to be valid
error
 - 
jest/valid-title jest
Enforce valid titles
warn
 - 
no-await-in-loop eslint
Disallow `await` inside of loops
warn
 - 
no-caller eslint
Disallow the use of `arguments.caller` or `arguments.callee`
error
 - 
no-class-assign eslint
Disallow reassigning class members
error
 - 
no-compare-neg-zero eslint
Disallow comparing against `-0`
error
 - 
no-cond-assign eslint
Disallow assignment operators in conditional expressions
error
[
  "except-parens"
]
no-console eslint
Disallow the use of `console`
warn
[
  {}
]
no-const-assign eslint
Disallow reassigning `const`, `using`, and `await using` variables
error
 - 
no-constant-binary-expression eslint
Disallow expressions where the operation doesn't affect the value
error
 - 
no-constructor-return eslint
Disallow returning value from constructor
warn
 - 
no-debugger eslint
Disallow the use of `debugger`
warn
 - 
no-dupe-args eslint
Disallow duplicate arguments in `function` definitions
error
 - 
no-dupe-else-if eslint
Disallow duplicate conditions in if-else-if chains
error
 - 
no-dupe-keys eslint
Disallow duplicate keys in object literals
error
 - 
no-duplicate-case eslint
Disallow duplicate case labels
error
 - 
no-duplicate-imports eslint
Disallow duplicate module imports
error
[
  {
    "includeExports": false,
    "allowSeparateTypeImports": false
  }
]
no-empty eslint
Disallow empty block statements
warn
[
  {
    "allowEmptyCatch": true
  }
]
no-empty-character-class eslint
Disallow empty character classes in regular expressions
warn
 - 
no-empty-pattern eslint
Disallow empty destructuring patterns
warn
[
  {
    "allowObjectPatternsAsParameters": false
  }
]
no-eval eslint
Disallow the use of `eval()`
error
[
  {
    "allowIndirect": false
  }
]
no-ex-assign eslint
Disallow reassigning exceptions in `catch` clauses
error
 - 
no-extend-native eslint
Disallow extending native types
error
[
  {
    "exceptions": []
  }
]
no-extra-bind eslint
Disallow unnecessary calls to `.bind()`
warn
 - 
no-extra-boolean-cast eslint
Disallow unnecessary boolean casts
warn
[
  {}
]
no-func-assign eslint
Disallow reassigning `function` declarations
error
 - 
no-global-assign eslint
Disallow assignments to native objects or read-only global variables
error
[
  {
    "exceptions": []
  }
]
no-implied-eval eslint
Disallow the use of `eval()`-like methods
error
 - 
no-import-assign eslint
Disallow assigning to imported bindings
error
 - 
no-inner-declarations eslint
Disallow variable or `function` declarations in nested blocks
error
[
  "functions",
  {
    "blockScopedFunctions": "allow"
  }
]
no-invalid-regexp eslint
Disallow invalid regular expression strings in `RegExp` constructors
warn
[
  {}
]
no-irregular-whitespace eslint
Disallow irregular whitespace
warn
[
  {
    "skipComments": false,
    "skipJSXText": false,
    "skipRegExps": false,
    "skipStrings": true,
    "skipTemplates": false
  }
]
no-iterator eslint
Disallow the use of the `__iterator__` property
error
 - 
no-labels eslint
Disallow labeled statements
error
[
  {
    "allowLoop": false,
    "allowSwitch": false
  }
]
no-lone-blocks eslint
Disallow unnecessary nested blocks
error
 - 
no-lonely-if eslint
Disallow `if` statements as the only statement in `else` blocks
error
 - 
no-loop-func eslint
Disallow function declarations that contain unsafe references inside loop statements
error
 - 
no-loss-of-precision eslint
Disallow literal numbers that lose precision
error
 - 
no-misleading-character-class eslint
Disallow characters which are made with multiple code points in character class syntax
error
[
  {
    "allowEscape": false
  }
]
no-negated-condition eslint
Disallow negated conditions
warn
 - 
no-nested-ternary eslint
Disallow nested ternary expressions
warn
 - 
no-new-func eslint
Disallow `new` operators with the `Function` object
error
 - 
no-new-native-nonconstructor eslint
Disallow `new` operators with global non-constructor functions
error
 - 
no-new-wrappers eslint
Disallow `new` operators with the `String`, `Number`, and `Boolean` objects
error
 - 
no-nonoctal-decimal-escape eslint
Disallow `\8` and `\9` escape sequences in string literals
warn
 - 
no-obj-calls eslint
Disallow calling global object properties as functions
error
 - 
no-object-constructor eslint
Disallow calls to the `Object` constructor without an argument
error
 - 
no-param-reassign eslint
Disallow reassigning function parameters
warn
 - 
no-proto eslint
Disallow the use of the `__proto__` property
error
 - 
no-script-url eslint
Disallow `javascript:` URLs
error
 - 
no-self-assign eslint
Disallow assignments where both sides are exactly the same
warn
[
  {
    "props": true
  }
]
no-self-compare eslint
Disallow comparisons where both sides are exactly the same
error
 - 
no-setter-return eslint
Disallow returning values from setters
error
 - 
no-shadow-restricted-names eslint
Disallow identifiers from shadowing restricted names
error
[
  {
    "reportGlobalThis": true
  }
]
no-sparse-arrays eslint
Disallow sparse arrays
warn
 - 
no-template-curly-in-string eslint
Disallow template literal placeholder syntax in regular strings
error
 - 
no-this-before-super eslint
Disallow `this`/`super` before calling `super()` in constructors
error
 - 
no-unexpected-multiline eslint
Disallow confusing multiline expressions
warn
 - 
no-unneeded-ternary eslint
Disallow ternary operators when simpler alternatives exist
warn
[
  {
    "defaultAssignment": true
  }
]
no-unreachable eslint
Disallow unreachable code after `return`, `throw`, `continue`, and `break` statements
warn
 - 
no-unreachable-loop eslint
Disallow loops with a body that allows only one iteration
error
[
  {
    "ignore": []
  }
]
no-unsafe-negation eslint
Disallow negating the left operand of relational operators
error
[
  {
    "enforceForOrderingRelations": false
  }
]
no-unsafe-optional-chaining eslint
Disallow use of optional chaining in contexts where the `undefined` value is not allowed
error
[
  {
    "disallowArithmeticOperators": false
  }
]
no-unused-private-class-members eslint
Disallow unused private class members
warn
 - 
no-useless-backreference eslint
Disallow useless backreferences in regular expressions
warn
 - 
no-useless-call eslint
Disallow unnecessary calls to `.call()` and `.apply()`
warn
 - 
no-useless-catch eslint
Disallow unnecessary `catch` clauses
warn
 - 
no-useless-concat eslint
Disallow unnecessary concatenation of literals or template literals
warn
 - 
no-useless-escape eslint
Disallow unnecessary escape characters
warn
[
  {
    "allowRegexCharacters": []
  }
]
no-useless-rename eslint
Disallow renaming import, export, and destructured assignments to the same name
warn
[
  {
    "ignoreDestructuring": false,
    "ignoreImport": false,
    "ignoreExport": false
  }
]
no-useless-return eslint
Disallow redundant return statements
warn
 - 
no-with eslint
Disallow `with` statements
error
 - 
object-shorthand eslint
Require or disallow method and property shorthand syntax for object literals
warn
[
  "always",
  {
    "avoidQuotes": true,
    "ignoreConstructors": true,
    "avoidExplicitReturnArrows": true
  }
]
one-var eslint
Enforce variables to be declared either together or separately in functions
warn
[
  {
    "var": "always",
    "let": "never",
    "const": "never"
  }
]
playwright/max-nested-describe playwright
Enforces a maximum depth to nested describe calls
error
[
  {
    "max": 2
  }
]
playwright/missing-playwright-await playwright
Identify false positives when async Playwright APIs are not properly awaited.
error
 - 
playwright/no-conditional-expect playwright
Disallow calling `expect` conditionally
warn
 - 
playwright/no-duplicate-hooks playwright
Disallow duplicate setup and teardown hooks
warn
 - 
playwright/no-element-handle playwright
The use of ElementHandle is discouraged, use Locator instead
error
 - 
playwright/no-eval playwright
The use of `page.$eval` and `page.$$eval` are discouraged, use `locator.evaluate` or `locator.evaluateAll` instead
error
 - 
playwright/no-focused-test playwright
Prevent usage of `.only()` focus test annotation
warn
 - 
playwright/no-force-option playwright
Prevent usage of `{ force: true }` option.
warn
 - 
playwright/no-get-by-title playwright
Disallows the usage of getByTitle()
warn
 - 
playwright/no-nested-step playwright
Disallow nested `test.step()` methods
warn
 - 
playwright/no-networkidle playwright
Prevent usage of the networkidle option
warn
 - 
playwright/no-page-pause playwright
Prevent usage of page.pause()
error
 - 
playwright/no-standalone-expect playwright
Disallow using `expect` outside of `test` blocks
error
 - 
playwright/no-unsafe-references playwright
Prevent unsafe variable references in page.evaluate() and page.addInitScript()
warn
 - 
playwright/no-useless-await playwright
Disallow unnecessary awaits for Playwright methods
error
 - 
playwright/no-useless-not playwright
Disallow usage of 'not' matchers when a more specific matcher exists
warn
 - 
playwright/no-wait-for-selector playwright
Prevent usage of page.waitForSelector()
warn
 - 
playwright/no-wait-for-timeout playwright
Prevent usage of page.waitForTimeout()
error
 - 
playwright/prefer-hooks-on-top playwright
Suggest having hooks before any test cases
warn
 - 
playwright/prefer-strict-equal playwright
Suggest using `toStrictEqual()`
warn
 - 
playwright/prefer-to-contain playwright
Suggest using toContain()
warn
 - 
playwright/prefer-to-have-count playwright
Suggest using `toHaveCount()`
warn
 - 
playwright/prefer-to-have-length playwright
Suggest using `toHaveLength()`
warn
 - 
playwright/prefer-web-first-assertions playwright
Prefer web first assertions
error
 - 
playwright/valid-describe-callback playwright
Enforce valid `describe()` callback
error
 - 
playwright/valid-expect playwright
Enforce valid `expect()` usage
warn
 - 
playwright/valid-expect-in-promise playwright
Require promises that have expectations in their chain to be valid
error
 - 
prefer-arrow-callback eslint
Require using arrow functions for callbacks
warn
[
  {
    "allowNamedFunctions": false,
    "allowUnboundThis": true
  }
]
prefer-const eslint
Require `const` declarations for variables that are never reassigned after declared
warn
[
  {
    "destructuring": "any",
    "ignoreReadBeforeAssign": false
  }
]
prefer-destructuring eslint
Require destructuring from arrays and/or objects
warn
[
  {
    "VariableDeclarator": {
      "array": false,
      "object": true
    }
  }
]
prefer-object-has-own eslint
Disallow use of `Object.prototype.hasOwnProperty.call()` and prefer use of `Object.hasOwn()`
warn
 - 
prefer-regex-literals eslint
Disallow use of the `RegExp` constructor in favor of regular expression literals
warn
[
  {
    "disallowRedundantWrapping": false
  }
]
prefer-rest-params eslint
Require rest parameters instead of `arguments`
warn
 - 
prefer-spread eslint
Require spread operators instead of `.apply()`
warn
 - 
prefer-template eslint
Require template literals instead of string concatenation
warn
 - 
react-hooks/exhaustive-deps react-hooks
verifies the list of dependencies for Hooks like useEffect and similar
error
 - 
react-hooks/rules-of-hooks react-hooks
enforces the Rules of Hooks
error
 - 
react/button-has-type react
Disallow usage of `button` elements without an explicit `type` attribute
warn
 - 
react/iframe-missing-sandbox react
Enforce sandbox attribute on iframe elements
error
 - 
react/jsx-boolean-value react
Enforce boolean attributes notation in JSX
warn
[
  "always"
]
react/jsx-closing-bracket-location react
Enforce closing bracket location in JSX
warn
[
  "tag-aligned"
]
react/jsx-closing-tag-location react
Enforce closing tag location for multiline JSX
warn
 - 
react/jsx-curly-brace-presence react
Disallow unnecessary JSX expressions when literals alone are sufficient or enforce JSX expressions on literals in JSX children or attributes
warn
[
  {
    "props": "never",
    "children": "never"
  }
]
react/jsx-curly-newline react
Enforce consistent linebreaks in curly braces in JSX attributes and expressions
warn
 - 
react/jsx-curly-spacing react
Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
warn
[
  "never"
]
react/jsx-equals-spacing react
Enforce or disallow spaces around equal signs in JSX attributes
warn
[
  "never"
]
react/jsx-filename-extension react
Disallow file extensions that may contain JSX
error
[
  {
    "extensions": [
      ".js",
      ".jsx",
      ".tsx",
      ".mdx"
    ]
  }
]
react/jsx-fragments react
Enforce shorthand or standard form for React fragments
warn
[
  "element"
]
react/jsx-handler-names react
Enforce event handler naming conventions in JSX
warn
 - 
react/jsx-indent react
Enforce JSX indentation
warn
[
  4
]
react/jsx-key react
Disallow missing `key` props in iterators/collection literals
error
 - 
react/jsx-max-depth react
Enforce JSX maximum depth
warn
[
  {
    "max": 13
  }
]
react/jsx-max-props-per-line react
Enforce maximum of props on a single line in JSX
warn
[
  {
    "maximum": 1,
    "when": "multiline"
  }
]
react/jsx-no-comment-textnodes react
Disallow comments from being inserted as text nodes
error
 - 
react/jsx-no-constructed-context-values react
Disallows JSX context provider values from taking values that will cause needless rerenders
error
 - 
react/jsx-no-duplicate-props react
Disallow duplicate properties in JSX
warn
 - 
react/jsx-no-leaked-render react
Disallow problematic leaked values from being rendered
error
[
  {
    "validStrategies": [
      "ternary"
    ]
  }
]
react/jsx-no-script-url react
Disallow usage of `javascript:` URLs
error
 - 
react/jsx-no-useless-fragment react
Disallow unnecessary fragments
warn
[
  {
    "allowExpressions": true
  }
]
react/jsx-pascal-case react
Enforce PascalCase for user-defined JSX components
warn
 - 
react/jsx-props-no-multi-spaces react
Disallow multiple spaces between inline JSX props
warn
 - 
react/jsx-tag-spacing react
Enforce whitespace in and around the JSX opening and closing brackets
warn
[
  {
    "closingSlash": "never",
    "beforeSelfClosing": "never",
    "afterOpening": "never",
    "beforeClosing": "never"
  }
]
react/jsx-uses-react react
Disallow React to be incorrectly marked as unused
error
 - 
react/jsx-uses-vars react
Disallow variables used in JSX to be incorrectly marked as unused
error
 - 
react/jsx-wrap-multilines react
Disallow missing parentheses around multiline JSX
warn
 - 
react/no-access-state-in-setstate react
Disallow when this.state is accessed within setState
warn
 - 
react/no-adjacent-inline-elements react
Disallow adjacent inline elements not separated by whitespace.
warn
 - 
react/no-array-index-key react
Disallow usage of Array index in keys
warn
 - 
react/no-arrow-function-lifecycle react
Lifecycle methods should be methods on the prototype, not class fields
warn
 - 
react/no-children-prop react
Disallow passing of children as props
error
 - 
react/no-danger-with-children react
Disallow when a DOM element is using both children and dangerouslySetInnerHTML
error
 - 
react/no-deprecated react
Disallow usage of deprecated methods
warn
 - 
react/no-did-mount-set-state react
Disallow usage of setState in componentDidMount
warn
 - 
react/no-did-update-set-state react
Disallow usage of setState in componentDidUpdate
warn
 - 
react/no-direct-mutation-state react
Disallow direct mutation of this.state
warn
 - 
react/no-find-dom-node react
Disallow usage of findDOMNode
error
 - 
react/no-is-mounted react
Disallow usage of isMounted
error
 - 
react/no-multi-comp react
Disallow multiple component definition per file
warn
[
  {
    "ignoreStateless": true
  }
]
react/no-namespace react
Enforce that namespaces are not used in React elements
error
 - 
react/no-render-return-value react
Disallow usage of the return value of ReactDOM.render
error
 - 
react/no-string-refs react
Disallow using string references
error
 - 
react/no-this-in-sfc react
Disallow `this` from being used in stateless functional components
error
 - 
react/no-typos react
Disallow common typos
error
 - 
react/no-unescaped-entities react
Disallow unescaped HTML entities from appearing in markup
error
 - 
react/no-unstable-nested-components react
Disallow creating unstable components inside components
error
[
  {
    "allowAsProps": true
  }
]
react/no-unused-state react
Disallow definitions of unused state
warn
 - 
react/no-will-update-set-state react
Disallow usage of setState in componentWillUpdate
error
 - 
react/prefer-es6-class react
Enforce ES5 or ES6 class for React Components
warn
 - 
react/prefer-stateless-function react
Enforce stateless components to be written as a pure function
warn
[
  {
    "ignorePureComponents": true
  }
]
react/react-in-jsx-scope react
Disallow missing React when using JSX
error
 - 
react/require-render-return react
Enforce ES5 or ES6 class for returning value in render function
error
 - 
react/self-closing-comp react
Disallow extra closing tags for components without children
warn
 - 
react/sort-comp react
Enforce component methods order
warn
[
  {
    "order": [
      "static-variables",
      "static-methods",
      "instance-variables",
      "lifecycle",
      "everything-else",
      "render"
    ],
    "groups": {
      "lifecycle": [
        "displayName",
        "propTypes",
        "contextTypes",
        "childContextTypes",
        "mixins",
        "statics",
        "defaultProps",
        "getDefaultProps",
        "state",
        "getInitialState",
        "constructor",
        "getChildContext",
        "getDerivedStateFromProps",
        "componentWillMount",
        "UNSAFE_componentWillMount",
        "componentDidMount",
        "componentWillReceiveProps",
        "UNSAFE_componentWillReceiveProps",
        "shouldComponentUpdate",
        "componentWillUpdate",
        "UNSAFE_componentWillUpdate",
        "getSnapshotBeforeUpdate",
        "componentDidUpdate",
        "componentDidCatch",
        "componentWillUnmount"
      ]
    }
  }
]
react/static-property-placement react
Enforces where React component static properties should be positioned.
warn
 - 
require-atomic-updates eslint
Disallow assignments that can lead to race conditions due to usage of `await` or `yield`
warn
[
  {
    "allowProperties": false
  }
]
use-isnan eslint
Require calls to `isNaN()` when checking for `NaN`
error
[
  {
    "enforceForIndexOf": false,
    "enforceForSwitchCase": true
  }
]
valid-typeof eslint
Enforce comparing `typeof` expressions against valid strings
error
[
  {
    "requireStringLiterals": false
  }
]
vars-on-top eslint
Require `var` declarations be placed at the top of their containing scope
warn
 - 
yoda eslint
Require or disallow "Yoda" conditions
warn
[
  "never",
  {
    "exceptRange": false,
    "onlyEquality": false
  }
]

Unused rules (499)

Rules available in the included plugins but not enabled by this config.

@stylistic/array-bracket-newline @stylistic
Enforce linebreaks after opening and before closing array brackets
@stylistic/array-element-newline @stylistic
Enforce line breaks after each array element
@stylistic/arrow-parens @stylistic
Require parentheses around arrow function arguments
@stylistic/brace-style @stylistic
Enforce consistent brace style for blocks
@stylistic/curly-newline @stylistic
Enforce consistent line breaks after opening and before closing braces
@stylistic/exp-jsx-props-style @stylistic
Enforce consistent line break styles for JSX props
@stylistic/exp-list-style @stylistic
Enforce consistent spacing and line break styles inside brackets.
@stylistic/function-paren-newline @stylistic
Enforce consistent line breaks inside function parentheses
@stylistic/generator-star-spacing @stylistic
Enforce consistent spacing around `*` operators in generator functions
@stylistic/implicit-arrow-linebreak @stylistic
Enforce the location of arrow function bodies
@stylistic/indent-binary-ops @stylistic
Indentation for binary operators
@stylistic/jsx-child-element-spacing @stylistic
Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
@stylistic/jsx-closing-bracket-location @stylistic
Enforce closing bracket location in JSX
@stylistic/jsx-closing-tag-location @stylistic
Enforce closing tag location for multiline JSX
@stylistic/jsx-curly-brace-presence @stylistic
Disallow unnecessary JSX expressions when literals alone are sufficient or enforce JSX expressions on literals in JSX children or attributes
@stylistic/jsx-curly-newline @stylistic
Enforce consistent linebreaks in curly braces in JSX attributes and expressions
@stylistic/jsx-curly-spacing @stylistic
Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
@stylistic/jsx-equals-spacing @stylistic
Enforce or disallow spaces around equal signs in JSX attributes
@stylistic/jsx-first-prop-new-line @stylistic
Enforce proper position of the first property in JSX
@stylistic/jsx-function-call-newline @stylistic
Enforce line breaks before and after JSX elements when they are used as arguments to a function.
@stylistic/jsx-indent @stylistic
Enforce JSX indentation. Deprecated, use `indent` rule instead.
@stylistic/jsx-indent-props @stylistic
Enforce props indentation in JSX
@stylistic/jsx-max-props-per-line @stylistic
Enforce maximum of props on a single line in JSX
@stylistic/jsx-newline @stylistic
Require or prevent a new line after jsx elements and expressions.
@stylistic/jsx-one-expression-per-line @stylistic
Require one JSX element per line
@stylistic/jsx-pascal-case @stylistic
Enforce PascalCase for user-defined JSX components
@stylistic/jsx-props-no-multi-spaces @stylistic
Disallow multiple spaces between inline JSX props. Deprecated, use `no-multi-spaces` rule instead.
@stylistic/jsx-self-closing-comp @stylistic
Disallow extra closing tags for components without children
@stylistic/jsx-sort-props @stylistic
Enforce props alphabetical sorting
@stylistic/jsx-tag-spacing @stylistic
Enforce whitespace in and around the JSX opening and closing brackets
@stylistic/jsx-wrap-multilines @stylistic
Disallow missing parentheses around multiline JSX
@stylistic/line-comment-position @stylistic
Enforce position of line comments
@stylistic/linebreak-style @stylistic
Enforce consistent linebreak style
@stylistic/lines-around-comment @stylistic
Require empty lines around comments
@stylistic/max-statements-per-line @stylistic
Enforce a maximum number of statements allowed per line
@stylistic/multiline-comment-style @stylistic
Enforce a particular style for multiline comments
@stylistic/multiline-ternary @stylistic
Enforce newlines between operands of ternary expressions
@stylistic/new-parens @stylistic
Enforce or disallow parentheses when invoking a constructor with no arguments
@stylistic/no-confusing-arrow @stylistic
Disallow arrow functions where they could be confused with comparisons
@stylistic/no-extra-parens @stylistic
Disallow unnecessary parentheses
@stylistic/no-mixed-operators @stylistic
Disallow mixed binary operators
@stylistic/nonblock-statement-body-position @stylistic
Enforce the location of single-line statements
@stylistic/object-curly-newline @stylistic
Enforce consistent line breaks after opening and before closing braces
@stylistic/object-property-newline @stylistic
Enforce placing object properties on separate lines
@stylistic/one-var-declaration-per-line @stylistic
Require or disallow newlines around variable declarations
@stylistic/operator-linebreak @stylistic
Enforce consistent linebreak style for operators
@stylistic/padding-line-between-statements @stylistic
Require or disallow padding lines between statements
@stylistic/semi-style @stylistic
Enforce location of semicolons
@stylistic/space-infix-ops @stylistic
Require spacing around infix operators
@stylistic/space-unary-ops @stylistic
Enforce consistent spacing before or after unary operators
@stylistic/spaced-comment @stylistic
Enforce consistent spacing after the `//` or `/*` in a comment
@stylistic/switch-colon-spacing @stylistic
Enforce spacing around colons of switch statements
@stylistic/type-generic-spacing @stylistic
Enforces consistent spacing inside TypeScript type generics
@stylistic/type-named-tuple-spacing @stylistic
Expect space before the type declaration in the named tuple
@stylistic/wrap-regex @stylistic
Require parenthesis around regex literals
@stylistic/yield-star-spacing @stylistic
Require or disallow spacing around the `*` in `yield*` expressions
@typescript-eslint/await-thenable @typescript-eslint
Disallow awaiting a value that is not a Thenable
@typescript-eslint/ban-tslint-comment @typescript-eslint
Disallow `// tslint:<rule-flag>` comments
@typescript-eslint/class-literal-property-style @typescript-eslint
Enforce that literals on classes are exposed in a consistent style
@typescript-eslint/class-methods-use-this @typescript-eslint
Enforce that class methods utilize `this`
@typescript-eslint/consistent-generic-constructors @typescript-eslint
Enforce specifying generic type arguments on type annotation or constructor name of a constructor call
@typescript-eslint/consistent-indexed-object-style @typescript-eslint
Require or disallow the `Record` type
@typescript-eslint/consistent-return @typescript-eslint
Require `return` statements to either always or never specify values
@typescript-eslint/consistent-type-definitions @typescript-eslint
Enforce type definitions to consistently use either `interface` or `type`
@typescript-eslint/consistent-type-exports @typescript-eslint
Enforce consistent usage of type exports
@typescript-eslint/dot-notation @typescript-eslint
Enforce dot notation whenever possible
@typescript-eslint/explicit-function-return-type @typescript-eslint
Require explicit return types on functions and class methods
@typescript-eslint/explicit-member-accessibility @typescript-eslint
Require explicit accessibility modifiers on class properties and methods
@typescript-eslint/explicit-module-boundary-types @typescript-eslint
Require explicit return and argument types on exported functions' and classes' public class methods
@typescript-eslint/init-declarations @typescript-eslint
Require or disallow initialization in variable declarations
@typescript-eslint/max-params @typescript-eslint
Enforce a maximum number of parameters in function definitions
@typescript-eslint/member-ordering @typescript-eslint
Require a consistent member declaration order
@typescript-eslint/method-signature-style @typescript-eslint
Enforce using a particular method signature syntax
@typescript-eslint/naming-convention @typescript-eslint
Enforce naming conventions for everything across a codebase
@typescript-eslint/no-array-delete @typescript-eslint
Disallow using the `delete` operator on array values
@typescript-eslint/no-base-to-string @typescript-eslint
Require `.toString()` and `.toLocaleString()` to only be called on objects which provide useful information when stringified
@typescript-eslint/no-confusing-non-null-assertion @typescript-eslint
Disallow non-null assertion in locations that may be confusing
@typescript-eslint/no-confusing-void-expression @typescript-eslint
Require expressions of type void to appear in statement position
@typescript-eslint/no-deprecated @typescript-eslint
Disallow using code marked as `@deprecated`
@typescript-eslint/no-duplicate-enum-values @typescript-eslint
Disallow duplicate enum member values
@typescript-eslint/no-dynamic-delete @typescript-eslint
Disallow using the `delete` operator on computed key expressions
@typescript-eslint/no-empty-interface @typescript-eslint
Disallow the declaration of empty interfaces
@typescript-eslint/no-empty-object-type @typescript-eslint
Disallow accidentally using the "empty object" type
@typescript-eslint/no-extraneous-class @typescript-eslint
Disallow classes used as namespaces
@typescript-eslint/no-floating-promises @typescript-eslint
Require Promise-like statements to be handled appropriately
@typescript-eslint/no-import-type-side-effects @typescript-eslint
Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers
@typescript-eslint/no-invalid-this @typescript-eslint
Disallow `this` keywords outside of classes or class-like objects
@typescript-eslint/no-invalid-void-type @typescript-eslint
Disallow `void` type outside of generic or return types
@typescript-eslint/no-loop-func @typescript-eslint
Disallow function declarations that contain unsafe references inside loop statements
@typescript-eslint/no-loss-of-precision @typescript-eslint
Disallow literal numbers that lose precision
@typescript-eslint/no-magic-numbers @typescript-eslint
Disallow magic numbers
@typescript-eslint/no-meaningless-void-operator @typescript-eslint
Disallow the `void` operator except when used to discard a value
@typescript-eslint/no-misused-spread @typescript-eslint
Disallow using the spread operator when it might cause unexpected behavior
@typescript-eslint/no-mixed-enums @typescript-eslint
Disallow enums from having both number and string members
@typescript-eslint/no-namespace @typescript-eslint
Disallow TypeScript namespaces
@typescript-eslint/no-non-null-asserted-nullish-coalescing @typescript-eslint
Disallow non-null assertions in the left operand of a nullish coalescing operator
@typescript-eslint/no-non-null-assertion @typescript-eslint
Disallow non-null assertions using the `!` postfix operator
@typescript-eslint/no-redundant-type-constituents @typescript-eslint
Disallow members of unions and intersections that do nothing or override type information
@typescript-eslint/no-restricted-imports @typescript-eslint
Disallow specified modules when loaded by `import`
@typescript-eslint/no-restricted-types @typescript-eslint
Disallow certain types
@typescript-eslint/no-type-alias @typescript-eslint
Disallow type aliases
@typescript-eslint/no-unnecessary-boolean-literal-compare @typescript-eslint
Disallow unnecessary equality comparisons against boolean literals
@typescript-eslint/no-unnecessary-condition @typescript-eslint
Disallow conditionals where the type is always truthy or always falsy
@typescript-eslint/no-unnecessary-parameter-property-assignment @typescript-eslint
Disallow unnecessary assignment of constructor property parameter
@typescript-eslint/no-unnecessary-template-expression @typescript-eslint
Disallow unnecessary template expressions
@typescript-eslint/no-unnecessary-type-assertion @typescript-eslint
Disallow type assertions that do not change the type of an expression
@typescript-eslint/no-unnecessary-type-constraint @typescript-eslint
Disallow unnecessary constraints on generic types
@typescript-eslint/no-unnecessary-type-conversion @typescript-eslint
Disallow conversion idioms when they do not change the type or value of the expression
@typescript-eslint/no-unnecessary-type-parameters @typescript-eslint
Disallow type parameters that aren't used multiple times
@typescript-eslint/no-unsafe-argument @typescript-eslint
Disallow calling a function with a value with type `any`
@typescript-eslint/no-unsafe-assignment @typescript-eslint
Disallow assigning a value with type `any` to variables and properties
@typescript-eslint/no-unsafe-call @typescript-eslint
Disallow calling a value with type `any`
@typescript-eslint/no-unsafe-declaration-merging @typescript-eslint
Disallow unsafe declaration merging
@typescript-eslint/no-unsafe-enum-comparison @typescript-eslint
Disallow comparing an enum value with a non-enum value
@typescript-eslint/no-unsafe-function-type @typescript-eslint
Disallow using the unsafe built-in Function type
@typescript-eslint/no-unsafe-member-access @typescript-eslint
Disallow member access on a value with type `any`
@typescript-eslint/no-unsafe-return @typescript-eslint
Disallow returning a value with type `any` from a function
@typescript-eslint/no-unsafe-type-assertion @typescript-eslint
Disallow type assertions that narrow a type
@typescript-eslint/no-unsafe-unary-minus @typescript-eslint
Require unary negation to take a number
@typescript-eslint/no-unused-private-class-members @typescript-eslint
Disallow unused private class members
@typescript-eslint/no-useless-default-assignment @typescript-eslint
Disallow default values that will never be used
@typescript-eslint/no-useless-empty-export @typescript-eslint
Disallow empty exports that don't change anything in a module file
@typescript-eslint/no-var-requires @typescript-eslint
Disallow `require` statements except in import statements
@typescript-eslint/no-wrapper-object-types @typescript-eslint
Disallow using confusing built-in primitive class wrappers
@typescript-eslint/non-nullable-type-assertion-style @typescript-eslint
Enforce non-null assertions over explicit type assertions
@typescript-eslint/parameter-properties @typescript-eslint
Require or disallow parameter properties in class constructors
@typescript-eslint/prefer-destructuring @typescript-eslint
Require destructuring from arrays and/or objects
@typescript-eslint/prefer-enum-initializers @typescript-eslint
Require each enum member value to be explicitly initialized
@typescript-eslint/prefer-find @typescript-eslint
Enforce the use of Array.prototype.find() over Array.prototype.filter() followed by [0] when looking for a single result
@typescript-eslint/prefer-function-type @typescript-eslint
Enforce using function types instead of interfaces with call signatures
@typescript-eslint/prefer-literal-enum-member @typescript-eslint
Require all enum members to be literal values
@typescript-eslint/prefer-nullish-coalescing @typescript-eslint
Enforce using the nullish coalescing operator instead of logical assignments or chaining
@typescript-eslint/prefer-promise-reject-errors @typescript-eslint
Require using Error objects as Promise rejection reasons
@typescript-eslint/prefer-readonly @typescript-eslint
Require private members to be marked as `readonly` if they're never modified outside of the constructor
@typescript-eslint/prefer-readonly-parameter-types @typescript-eslint
Require function parameters to be typed as `readonly` to prevent accidental mutation of inputs
@typescript-eslint/prefer-reduce-type-parameter @typescript-eslint
Enforce using type parameter when calling `Array#reduce` instead of using a type assertion
@typescript-eslint/prefer-regexp-exec @typescript-eslint
Enforce `RegExp#exec` over `String#match` if no global flag is provided
@typescript-eslint/prefer-return-this-type @typescript-eslint
Enforce that `this` is used when only `this` type is returned
@typescript-eslint/prefer-ts-expect-error @typescript-eslint
Enforce using `@ts-expect-error` over `@ts-ignore`
@typescript-eslint/promise-function-async @typescript-eslint
Require any function or method that returns a Promise to be marked async
@typescript-eslint/related-getter-setter-pairs @typescript-eslint
Enforce that `get()` types should be assignable to their equivalent `set()` type
@typescript-eslint/require-array-sort-compare @typescript-eslint
Require `Array#sort` and `Array#toSorted` calls to always provide a `compareFunction`
@typescript-eslint/restrict-plus-operands @typescript-eslint
Require both operands of addition to be the same type and be `bigint`, `number`, or `string`
@typescript-eslint/restrict-template-expressions @typescript-eslint
Enforce template literal expressions to be of `string` type
@typescript-eslint/return-await @typescript-eslint
Enforce consistent awaiting of returned promises
@typescript-eslint/sort-type-constituents @typescript-eslint
Enforce constituents of a type union/intersection to be sorted alphabetically
@typescript-eslint/strict-boolean-expressions @typescript-eslint
Disallow certain types in boolean expressions
@typescript-eslint/strict-void-return @typescript-eslint
Disallow passing a value-returning function in a position accepting a void function
@typescript-eslint/switch-exhaustiveness-check @typescript-eslint
Require switch-case statements to be exhaustive
@typescript-eslint/typedef @typescript-eslint
Require type annotations in certain places
@typescript-eslint/unbound-method @typescript-eslint
Enforce unbound methods are called with their expected scope
@typescript-eslint/unified-signatures @typescript-eslint
Disallow two overloads that could be unified into one with a union or an optional/rest parameter
@typescript-eslint/use-unknown-in-catch-callback-variable @typescript-eslint
Enforce typing arguments in Promise rejection callbacks as `unknown`
array-bracket-newline eslint
Enforce linebreaks after opening and before closing array brackets
array-bracket-spacing eslint
Enforce consistent spacing inside array brackets
array-element-newline eslint
Enforce line breaks after each array element
arrow-parens eslint
Require parentheses around arrow function arguments
arrow-spacing eslint
Enforce consistent spacing before and after the arrow in arrow functions
block-scoped-var eslint
Enforce the use of variables within the scope they are defined
block-spacing eslint
Disallow or enforce spaces inside of blocks after opening block and before closing block
brace-style eslint
Enforce consistent brace style for blocks
callback-return eslint
Require `return` statements after callbacks
camelcase eslint
Enforce camelcase naming convention
capitalized-comments eslint
Enforce or disallow capitalization of the first letter of a comment
class-methods-use-this eslint
Enforce that class methods utilize `this`
comma-dangle eslint
Require or disallow trailing commas
comma-spacing eslint
Enforce consistent spacing before and after commas
comma-style eslint
Enforce consistent comma style
complexity eslint
Enforce a maximum cyclomatic complexity allowed in a program
computed-property-spacing eslint
Enforce consistent spacing inside computed property brackets
consistent-return eslint
Require `return` statements to either always or never specify values
consistent-this eslint
Enforce consistent naming when capturing the current execution context
default-case eslint
Require `default` cases in `switch` statements
default-case-last eslint
Enforce `default` clauses in `switch` statements to be last
default-param-last eslint
Enforce default parameters to be last
dot-location eslint
Enforce consistent newlines before and after dots
dot-notation eslint
Enforce dot notation whenever possible
eol-last eslint
Require or disallow newline at the end of files
func-call-spacing eslint
Require or disallow spacing between function identifiers and their invocations
func-style eslint
Enforce the consistent use of either `function` declarations or expressions assigned to variables
function-call-argument-newline eslint
Enforce line breaks between arguments of a function call
function-paren-newline eslint
Enforce consistent line breaks inside function parentheses
generator-star-spacing eslint
Enforce consistent spacing around `*` operators in generator functions
global-require eslint
Require `require()` calls to be placed at top-level module scope
handle-callback-err eslint
Require error handling in callbacks
id-blacklist eslint
Disallow specified identifiers
id-denylist eslint
Disallow specified identifiers
id-length eslint
Enforce minimum and maximum identifier lengths
id-match eslint
Require identifiers to match a specified regular expression
implicit-arrow-linebreak eslint
Enforce the location of arrow function bodies
indent eslint
Enforce consistent indentation
indent-legacy eslint
Enforce consistent indentation
init-declarations eslint
Require or disallow initialization in variable declarations
jest/expect-expect jest
Enforce assertion to be made in a test body
jest/max-expects jest
Enforces a maximum number assertion calls in a test body
jest/max-nested-describe jest
Enforces a maximum depth to nested describe calls
jest/no-alias-methods jest
Disallow alias methods
jest/no-conditional-in-test jest
Disallow conditional logic in tests
jest/no-confusing-set-timeout jest
Disallow confusing usages of jest.setTimeout
jest/no-deprecated-functions jest
Disallow use of deprecated functions
jest/no-done-callback jest
Disallow using a callback in asynchronous tests and hooks
jest/no-error-equal jest
Disallow using equality matchers on error types
jest/no-hooks jest
Disallow setup and teardown hooks
jest/no-interpolation-in-snapshots jest
Disallow string interpolation inside snapshots
jest/no-large-snapshots jest
Disallow large snapshots
jest/no-restricted-jest-methods jest
Disallow specific `jest.` methods
jest/no-test-return-statement jest
Disallow explicitly returning from tests
jest/no-unnecessary-assertion jest
Disallow unnecessary assertions based on types
jest/no-unneeded-async-expect-function jest
Disallow unnecessary async function wrapper for expected promises
jest/no-untyped-mock-factory jest
Disallow using `jest.mock()` factories without an explicit type parameter
jest/padding-around-after-all-blocks jest
Enforce padding around `afterAll` blocks
jest/padding-around-after-each-blocks jest
Enforce padding around `afterEach` blocks
jest/padding-around-all jest
Enforce padding around Jest functions
jest/padding-around-before-all-blocks jest
Enforce padding around `beforeAll` blocks
jest/padding-around-before-each-blocks jest
Enforce padding around `beforeEach` blocks
jest/padding-around-describe-blocks jest
Enforce padding around `describe` blocks
jest/padding-around-expect-groups jest
Enforce padding around `expect` groups
jest/padding-around-test-blocks jest
Enforce padding around `test` and `it` blocks
jest/prefer-called-with jest
Suggest using `toHaveBeenCalledWith()`
jest/prefer-comparison-matcher jest
Suggest using the built-in comparison matchers
jest/prefer-each jest
Prefer using `.each` rather than manual loops
jest/prefer-ending-with-an-expect jest
Prefer having the last statement in a test be an assertion
jest/prefer-equality-matcher jest
Suggest using the built-in equality matchers
jest/prefer-expect-assertions jest
Suggest using `expect.assertions()` OR `expect.hasAssertions()`
jest/prefer-expect-resolves jest
Prefer `await expect(...).resolves` over `expect(await ...)` syntax
jest/prefer-hooks-in-order jest
Prefer having hooks in a consistent order
jest/prefer-importing-jest-globals jest
Prefer importing Jest globals
jest/prefer-jest-mocked jest
Prefer `jest.mocked()` over `fn as jest.Mock`
jest/prefer-mock-promise-shorthand jest
Prefer mock resolved/rejected shorthands for promises
jest/prefer-mock-return-shorthand jest
Prefer mock return shorthands
jest/prefer-snapshot-hint jest
Prefer including a hint with external snapshots
jest/prefer-spy-on jest
Suggest using `jest.spyOn()`
jest/prefer-strict-equal jest
Suggest using `toStrictEqual()`
jest/prefer-to-have-been-called jest
Suggest using `toHaveBeenCalled`
jest/prefer-to-have-been-called-times jest
Suggest using `toHaveBeenCalledTimes()`
jest/require-hook jest
Require setup and teardown code to be within a hook
jest/require-to-throw-message jest
Require a message for `toThrow()`
jest/unbound-method jest
Enforce unbound methods are called with their expected scope
jest/valid-expect-with-promise jest
Require that `resolve` and `reject` modifiers are present (and only) for promise-like types
jest/valid-mock-module-path jest
Disallow mocking of non-existing module paths
jsx-quotes eslint
Enforce the consistent use of either double or single quotes in JSX attributes
key-spacing eslint
Enforce consistent spacing between keys and values in object literal properties
keyword-spacing eslint
Enforce consistent spacing before and after keywords
line-comment-position eslint
Enforce position of line comments
linebreak-style eslint
Enforce consistent linebreak style
lines-around-comment eslint
Require empty lines around comments
lines-around-directive eslint
Require or disallow newlines around directives
lines-between-class-members eslint
Require or disallow an empty line between class members
logical-assignment-operators eslint
Require or disallow logical assignment operator shorthand
max-classes-per-file eslint
Enforce a maximum number of classes per file
max-depth eslint
Enforce a maximum depth that blocks can be nested
max-len eslint
Enforce a maximum line length
max-lines eslint
Enforce a maximum number of lines per file
max-lines-per-function eslint
Enforce a maximum number of lines of code in a function
max-nested-callbacks eslint
Enforce a maximum depth that callbacks can be nested
max-params eslint
Enforce a maximum number of parameters in function definitions
max-statements eslint
Enforce a maximum number of statements allowed in function blocks
max-statements-per-line eslint
Enforce a maximum number of statements allowed per line
multiline-comment-style eslint
Enforce a particular style for multiline comments
multiline-ternary eslint
Enforce newlines between operands of ternary expressions
new-cap eslint
Require constructor names to begin with a capital letter
new-parens eslint
Enforce or disallow parentheses when invoking a constructor with no arguments
newline-after-var eslint
Require or disallow an empty line after variable declarations
newline-before-return eslint
Require an empty line before `return` statements
newline-per-chained-call eslint
Require a newline after each call in a method chain
no-alert eslint
Disallow the use of `alert`, `confirm`, and `prompt`
no-array-constructor eslint
Disallow `Array` constructors
no-async-promise-executor eslint
Disallow using an async function as a Promise executor
no-bitwise eslint
Disallow bitwise operators
no-buffer-constructor eslint
Disallow use of the `Buffer()` constructor
no-case-declarations eslint
Disallow lexical declarations in case clauses
no-catch-shadow eslint
Disallow `catch` clause parameters from shadowing variables in the outer scope
no-confusing-arrow eslint
Disallow arrow functions where they could be confused with comparisons
no-constant-condition eslint
Disallow constant expressions in conditions
no-continue eslint
Disallow `continue` statements
no-control-regex eslint
Disallow control characters in regular expressions
no-delete-var eslint
Disallow deleting variables
no-div-regex eslint
Disallow equal signs explicitly at the beginning of regular expressions
no-dupe-class-members eslint
Disallow duplicate class members
no-else-return eslint
Disallow `else` blocks after `return` statements in `if` statements
no-empty-function eslint
Disallow empty functions
no-empty-static-block eslint
Disallow empty static blocks
no-eq-null eslint
Disallow `null` comparisons without type-checking operators
no-extra-label eslint
Disallow unnecessary labels
no-extra-parens eslint
Disallow unnecessary parentheses
no-extra-semi eslint
Disallow unnecessary semicolons
no-fallthrough eslint
Disallow fallthrough of `case` statements
no-floating-decimal eslint
Disallow leading or trailing decimal points in numeric literals
no-implicit-coercion eslint
Disallow shorthand type conversions
no-implicit-globals eslint
Disallow declarations in the global scope
no-inline-comments eslint
Disallow inline comments after code
no-invalid-this eslint
Disallow use of `this` in contexts where the value of `this` is `undefined`
no-label-var eslint
Disallow labels that share a name with a variable
no-magic-numbers eslint
Disallow magic numbers
no-mixed-operators eslint
Disallow mixed binary operators
no-mixed-requires eslint
Disallow `require` calls to be mixed with regular variable declarations
no-mixed-spaces-and-tabs eslint
Disallow mixed spaces and tabs for indentation
no-multi-assign eslint
Disallow use of chained assignment expressions
no-multi-spaces eslint
Disallow multiple spaces
no-multi-str eslint
Disallow multiline strings
no-multiple-empty-lines eslint
Disallow multiple empty lines
no-native-reassign eslint
Disallow assignments to native objects or read-only global variables
no-negated-in-lhs eslint
Disallow negating the left operand in `in` expressions
no-new eslint
Disallow `new` operators outside of assignments or comparisons
no-new-object eslint
Disallow `Object` constructors
no-new-require eslint
Disallow `new` operators with calls to `require`
no-new-symbol eslint
Disallow `new` operators with the `Symbol` object
no-octal eslint
Disallow octal literals
no-octal-escape eslint
Disallow octal escape sequences in string literals
no-path-concat eslint
Disallow string concatenation with `__dirname` and `__filename`
no-plusplus eslint
Disallow the unary operators `++` and `--`
no-process-env eslint
Disallow the use of `process.env`
no-process-exit eslint
Disallow the use of `process.exit()`
no-promise-executor-return eslint
Disallow returning values from Promise executor functions
no-prototype-builtins eslint
Disallow calling some `Object.prototype` methods directly on objects
no-redeclare eslint
Disallow variable redeclaration
no-regex-spaces eslint
Disallow multiple spaces in regular expressions
no-restricted-exports eslint
Disallow specified names in exports
no-restricted-globals eslint
Disallow specified global variables
no-restricted-imports eslint
Disallow specified modules when loaded by `import`
no-restricted-modules eslint
Disallow specified modules when loaded by `require`
no-restricted-properties eslint
Disallow certain properties on certain objects
no-restricted-syntax eslint
Disallow specified syntax
no-return-assign eslint
Disallow assignment operators in `return` statements
no-return-await eslint
Disallow unnecessary `return await`
no-sequences eslint
Disallow comma operators
no-shadow eslint
Disallow variable declarations from shadowing variables declared in the outer scope
no-spaced-func eslint
Disallow spacing between function identifiers and their applications (deprecated)
no-sync eslint
Disallow synchronous methods
no-tabs eslint
Disallow all tabs
no-ternary eslint
Disallow ternary operators
no-throw-literal eslint
Disallow throwing literals as exceptions
no-trailing-spaces eslint
Disallow trailing whitespace at the end of lines
no-unassigned-vars eslint
Disallow `let` or `var` variables that are read but never assigned
no-undef eslint
Disallow the use of undeclared variables unless mentioned in `/*global */` comments
no-undef-init eslint
Disallow initializing variables to `undefined`
no-undefined eslint
Disallow the use of `undefined` as an identifier
no-underscore-dangle eslint
Disallow dangling underscores in identifiers
no-unmodified-loop-condition eslint
Disallow unmodified loop conditions
no-unsafe-finally eslint
Disallow control flow statements in `finally` blocks
no-unused-expressions eslint
Disallow unused expressions
no-unused-labels eslint
Disallow unused labels
no-unused-vars eslint
Disallow unused variables
no-use-before-define eslint
Disallow the use of variables before they are defined
no-useless-assignment eslint
Disallow variable assignments when the value is not used
no-useless-computed-key eslint
Disallow unnecessary computed property keys in objects and classes
no-useless-constructor eslint
Disallow unnecessary constructors
no-var eslint
Require `let` or `const` instead of `var`
no-void eslint
Disallow `void` operators
no-warning-comments eslint
Disallow specified warning terms in comments
no-whitespace-before-property eslint
Disallow whitespace before properties
nonblock-statement-body-position eslint
Enforce the location of single-line statements
object-curly-newline eslint
Enforce consistent line breaks after opening and before closing braces
object-curly-spacing eslint
Enforce consistent spacing inside braces
object-property-newline eslint
Enforce placing object properties on separate lines
one-var-declaration-per-line eslint
Require or disallow newlines around variable declarations
operator-assignment eslint
Require or disallow assignment operator shorthand where possible
operator-linebreak eslint
Enforce consistent linebreak style for operators
padded-blocks eslint
Require or disallow padding within blocks
padding-line-between-statements eslint
Require or disallow padding lines between statements
playwright/consistent-spacing-between-blocks playwright
Enforces a blank line between Playwright test blocks (e.g., test, test.step, test.beforeEach, etc.).
playwright/expect-expect playwright
Enforce assertion to be made in a test body
playwright/max-expects playwright
Enforces a maximum number assertion calls in a test body
playwright/no-commented-out-tests playwright
Disallow commented out tests
playwright/no-conditional-in-test playwright
Disallow conditional logic in tests
playwright/no-duplicate-slow playwright
Disallow multiple `test.slow()` calls in the same test
playwright/no-hooks playwright
Disallow setup and teardown hooks
playwright/no-nth-methods playwright
Disallow usage of nth methods
playwright/no-raw-locators playwright
Disallows the usage of raw locators
playwright/no-restricted-locators playwright
Disallows the usage of specific locator methods
playwright/no-restricted-matchers playwright
Disallow specific matchers & modifiers
playwright/no-restricted-roles playwright
Disallows the usage of specific roles in getByRole()
playwright/no-skipped-test playwright
Prevent usage of the `.skip()` skip test annotation.
playwright/no-slowed-test playwright
Prevent usage of the `.slow()` slow test annotation.
playwright/no-unused-locators playwright
Disallow usage of page locators that are not used
playwright/no-wait-for-navigation playwright
Prevent usage of page.waitForNavigation()
playwright/prefer-comparison-matcher playwright
Suggest using the built-in comparison matchers
playwright/prefer-equality-matcher playwright
Suggest using the built-in equality matchers
playwright/prefer-hooks-in-order playwright
Prefer having hooks in a consistent order
playwright/prefer-locator playwright
Suggest locators over page methods
playwright/prefer-lowercase-title playwright
Enforce lowercase test names
playwright/prefer-native-locators playwright
Prefer native locator functions
playwright/prefer-to-be playwright
Suggest using `toBe()` for primitive literals
playwright/require-hook playwright
Require setup and teardown code to be within a hook
playwright/require-soft-assertions playwright
Require all assertions to use `expect.soft`
playwright/require-tags playwright
Require test blocks to have tags
playwright/require-to-pass-timeout playwright
Require a timeout option for `toPass()`
playwright/require-to-throw-message playwright
Require a message for `toThrow()`
playwright/require-top-level-describe playwright
Require test cases and hooks to be inside a `test.describe` block
playwright/valid-test-tags playwright
Enforce valid tag format in Playwright test blocks and titles
playwright/valid-title playwright
Enforce valid titles
prefer-exponentiation-operator eslint
Disallow the use of `Math.pow` in favor of the `**` operator
prefer-named-capture-group eslint
Enforce using named capture group in regular expression
prefer-numeric-literals eslint
Disallow `parseInt()` and `Number.parseInt()` in favor of binary, octal, and hexadecimal literals
prefer-object-spread eslint
Disallow using `Object.assign` with an object literal as the first argument and prefer the use of object spread instead
prefer-promise-reject-errors eslint
Require using Error objects as Promise rejection reasons
prefer-reflect eslint
Require `Reflect` methods where applicable
preserve-caught-error eslint
Disallow losing originally caught error when re-throwing custom errors
quote-props eslint
Require quotes around object literal property names
quotes eslint
Enforce the consistent use of either backticks, double, or single quotes
radix eslint
Enforce the use of the radix argument when using `parseInt()`
react-hooks/capitalized-calls react-hooks
Validates against calling capitalized functions/methods instead of using JSX
react-hooks/component-hook-factories react-hooks
Deprecated: this rule has been removed in 7.1.0.
react-hooks/config react-hooks
Validates the compiler configuration options
react-hooks/error-boundaries react-hooks
Validates usage of error boundaries instead of try/catch for errors in child components
react-hooks/exhaustive-effect-dependencies react-hooks
Validates that effect dependencies are exhaustive and without extraneous values
react-hooks/fbt react-hooks
Validates usage of fbt
react-hooks/gating react-hooks
Validates configuration of [gating mode](https://react.dev/reference/react-compiler/gating)
react-hooks/globals react-hooks
Validates against assignment/mutation of globals during render, part of ensuring that [side effects must render outside of render](https://react.dev/reference/rules/components-and-hooks-must-be-pure#side-effects-must-run-outside-of-render)
react-hooks/hooks react-hooks
Validates the rules of hooks
react-hooks/immutability react-hooks
Validates against mutating props, state, and other values that [are immutable](https://react.dev/reference/rules/components-and-hooks-must-be-pure#props-and-state-are-immutable)
react-hooks/incompatible-library react-hooks
Validates against usage of libraries which are incompatible with memoization (manual or automatic)
react-hooks/invariant react-hooks
Internal invariants
react-hooks/memo-dependencies react-hooks
Validates that useMemo() and useCallback() specify comprehensive dependencies without extraneous values. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
react-hooks/memoized-effect-dependencies react-hooks
Validates that effect dependencies are memoized
react-hooks/no-deriving-state-in-effects react-hooks
Validates against deriving values from state in an effect
react-hooks/preserve-manual-memoization react-hooks
Validates that existing manual memoized is preserved by the compiler. React Compiler will only compile components and hooks if its inference [matches or exceeds the existing manual memoization](https://react.dev/learn/react-compiler/introduction#what-should-i-do-about-usememo-usecallback-and-reactmemo)
react-hooks/purity react-hooks
Validates that [components/hooks are pure](https://react.dev/reference/rules/components-and-hooks-must-be-pure) by checking that they do not call known-impure functions
react-hooks/refs react-hooks
Validates correct usage of refs, not reading/writing during render. See the "pitfalls" section in [`useRef()` usage](https://react.dev/reference/react/useRef#usage)
react-hooks/rule-suppression react-hooks
Validates against suppression of other rules
react-hooks/set-state-in-effect react-hooks
Validates against calling setState synchronously in an effect. This can indicate non-local derived data, a derived event pattern, or improper external data synchronization.
react-hooks/set-state-in-render react-hooks
Validates against setting state during render, which can trigger additional renders and potential infinite render loops
react-hooks/static-components react-hooks
Validates that components are static, not recreated every render. Components that are recreated dynamically can reset state and trigger excessive re-rendering
react-hooks/syntax react-hooks
Validates against invalid syntax
react-hooks/todo react-hooks
Unimplemented features
react-hooks/unsupported-syntax react-hooks
Validates against syntax that we do not plan to support in React Compiler
react-hooks/use-memo react-hooks
Validates usage of the useMemo() hook against common mistakes. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
react-hooks/void-use-memo react-hooks
Validates that useMemos always return a value and that the result of the useMemo is used by the component/hook. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
react/boolean-prop-naming react
Enforces consistent naming for boolean props
react/checked-requires-onchange-or-readonly react
Enforce using `onChange` or `readonly` attribute when `checked` is used
react/default-props-match-prop-types react
Enforce all defaultProps have a corresponding non-required PropType
react/destructuring-assignment react
Enforce consistent usage of destructuring assignment of props, state, and context
react/display-name react
Disallow missing displayName in a React component definition
react/forbid-component-props react
Disallow certain props on components
react/forbid-dom-props react
Disallow certain props on DOM Nodes
react/forbid-elements react
Disallow certain elements
react/forbid-foreign-prop-types react
Disallow using another component's propTypes
react/forbid-prop-types react
Disallow certain propTypes
react/forward-ref-uses-ref react
Require all forwardRef components include a ref parameter
react/function-component-definition react
Enforce a specific function type for function components
react/hook-use-state react
Ensure destructuring and symmetric naming of useState hook value and setter variables
react/jsx-child-element-spacing react
Enforce or disallow spaces inside of curly braces in JSX attributes and expressions
react/jsx-first-prop-new-line react
Enforce proper position of the first property in JSX
react/jsx-indent-props react
Enforce props indentation in JSX
react/jsx-newline react
Require or prevent a new line after jsx elements and expressions.
react/jsx-no-bind react
Disallow `.bind()` or arrow functions in JSX props
react/jsx-no-literals react
Disallow usage of string literals in JSX
react/jsx-no-target-blank react
Disallow `target="_blank"` attribute without `rel="noreferrer"`
react/jsx-no-undef react
Disallow undeclared variables in JSX
react/jsx-one-expression-per-line react
Require one JSX element per line
react/jsx-props-no-spread-multi react
Disallow JSX prop spreading the same identifier multiple times
react/jsx-props-no-spreading react
Disallow JSX prop spreading
react/jsx-sort-default-props react
Enforce defaultProps declarations alphabetical sorting
react/jsx-sort-props react
Enforce props alphabetical sorting
react/jsx-space-before-closing react
Enforce spacing before closing bracket in JSX
react/no-danger react
Disallow usage of dangerous JSX properties
react/no-invalid-html-attribute react
Disallow usage of invalid attributes
react/no-object-type-as-default-prop react
Disallow usage of referential-type variables as default param in functional component
react/no-redundant-should-component-update react
Disallow usage of shouldComponentUpdate when extending React.PureComponent
react/no-set-state react
Disallow usage of setState
react/no-unknown-property react
Disallow usage of unknown DOM property
react/no-unsafe react
Disallow usage of unsafe lifecycle methods
react/no-unused-class-component-methods react
Disallow declaring unused methods of component class
react/no-unused-prop-types react
Disallow definitions of unused propTypes
react/prefer-exact-props react
Prefer exact proptype definitions
react/prefer-read-only-props react
Enforce that props are read-only
react/prop-types react
Disallow missing props validation in a React component definition
react/require-default-props react
Enforce a defaultProps definition for every prop that is not a required prop
react/require-optimization react
Enforce React components to have a shouldComponentUpdate method
react/sort-default-props react
Enforce defaultProps declarations alphabetical sorting
react/sort-prop-types react
Enforce propTypes declarations alphabetical sorting
react/state-in-constructor react
Enforce class component state initialization style
react/style-prop-object react
Enforce style prop value is an object
react/void-dom-elements-no-children react
Disallow void DOM elements (e.g. `<img />`, `<br />`) from receiving children
require-await eslint
Disallow async functions which have no `await` expression
require-unicode-regexp eslint
Enforce the use of `u` or `v` flag on regular expressions
require-yield eslint
Require generator functions to contain `yield`
rest-spread-spacing eslint
Enforce spacing between rest and spread operators and their expressions
semi eslint
Require or disallow semicolons instead of ASI
semi-spacing eslint
Enforce consistent spacing before and after semicolons
semi-style eslint
Enforce location of semicolons
sort-imports eslint
Enforce sorted `import` declarations within modules
sort-keys eslint
Require object keys to be sorted
sort-vars eslint
Require variables within the same declaration block to be sorted
space-before-blocks eslint
Enforce consistent spacing before blocks
space-before-function-paren eslint
Enforce consistent spacing before `function` definition opening parenthesis
space-in-parens eslint
Enforce consistent spacing inside parentheses
space-infix-ops eslint
Require spacing around infix operators
space-unary-ops eslint
Enforce consistent spacing before or after unary operators
spaced-comment eslint
Enforce consistent spacing after the `//` or `/*` in a comment
strict eslint
Require or disallow strict mode directives
switch-colon-spacing eslint
Enforce spacing around colons of switch statements
symbol-description eslint
Require symbol descriptions
template-curly-spacing eslint
Require or disallow spacing around embedded expressions of template strings
template-tag-spacing eslint
Require or disallow spacing between template tags and their literals
unicode-bom eslint
Require or disallow Unicode byte order mark (BOM)
wrap-iife eslint
Require parentheses around immediate `function` invocations
wrap-regex eslint
Require parenthesis around regex literals
yield-star-spacing eslint
Require or disallow spacing around the `*` in `yield*` expressions