this is adapted from documentation here
note: we use "extends": "eslint:recommended" property in our configuration file (read more)
- constructor-super
- jsx-quotes
- jsx-one-expression-per-line
- max-len
- max-statements
- no-case-declarations
- no-class-assign
- no-compare-neg-zero
- no-cond-assign
- no-console
- no-const-assign
- no-constant-condition
- no-control-regex
- no-debugger
- no-delete-var
- no-dupe-args
- no-dupe-class-members
- no-dupe-keys
- no-duplicate-case
- no-empty-character-class
- no-empty-pattern
- no-empty
- no-ex-assign
- no-extra-boolean-cast
- no-extra-semi
- no-fallthrough
- no-func-assign
- no-global-assign
- no-inner-declarations
- no-invalid-regexp
- no-irregular-whitespace
- no-mixed-spaces-and-tabs
- no-new-symbol
- no-obj-calls
- no-octal
- no-redeclare
- no-regex-spaces
- no-self-assign
- no-sparse-arrays
- no-this-before-super
- no-undef
- no-unexpected-multiline
- no-unreachable
- no-unsafe-finally
- no-unsafe-negation
- no-unused-labels
- no-unused-vars
- no-useless-escape
- no-var
- react/display-name
- react/forbid-prop-types
- react/jsx-curly-spacing
- react/jsx-key
- react/jsx-no-duplicate-props
- react/jsx-no-undef
- react/jsx-pascal-case
- react/jsx-uses-react
- react/jsx-uses-vars
- react/no-danger
- react/no-did-mount-set-state
- react/no-did-update-set-state
- react/no-direct-mutation-state
- react/no-multi-comp
- react/no-unknown-property
- react/prefer-es6-class
- react/prop-types
- react/react-in-jsx-scope
- react/self-closing-comp
- react/sort-comp
- require-yield
- semi
- use-isnan
- valid-typeof
- disallow comparing against -0 read more
- disallow assignment operators in conditional expressions read more
- disallow the use of
consoleread more
- disallow constant expressions in conditions read more
- disallow control characters in regular expressions read more
- disallow the use of
debuggerread more
- disallow duplicate arguments in
functiondefinitions read more
- disallow duplicate keys in object literals read more
- disallow duplicate case labels read more
- disallow empty block statements read more
- disallow empty character classes in regular expressions read more
- disallow reassigning exceptions in
catchclauses read more
- disallow unnecessary boolean casts read more
- disallow unnecessary semicolons read more
- disallow reassigning
functiondeclarations read more
- disallow variable or
functiondeclarations in nested blocks read more
- disallow invalid regular expression strings in
RegExpconstructors read more
- disallow irregular whitespace outside of strings and comments read more
- disallow calling global object properties as functions read more
- disallow multiple spaces in regular expressions read more
- disallow sparse arrays read more
- disallow confusing multiline expressions read more
- disallow unreachable code after
return,throw,continue, andbreakstatements read more
- disallow control flow statements in
finallyblocks read more
- disallow negating the left operand of relational operators read more
- require calls to
isNaN()when checking forNaNread more
- enforce comparing
typeofexpressions against valid strings read more
- disallow lexical declarations in case clauses read more
- disallow empty destructuring patterns read more
- disallow fallthrough of
casestatements read more
- disallow assignments to native objects or read-only global variables read more
- disallow octal literals read more
- disallow variable redeclaration read more
- disallow assignments where both sides are exactly the same read more
- disallow unused labels read more
- disallow unnecessary escape characters read more
- disallow deleting variables read more
- disallow the use of undeclared variables unless mentioned in
/*global*/comments read more
- disallow unused variables read more
- disallow mixed spaces and tabs for indentation read more
- require
super()calls in constructors read more
- disallow reassigning class members read more
- disallow reassigning
constvariables read more
- disallow duplicate class members read more
- disallow
newoperators with theSymbolobject read more
- disallow
this/superbefore callingsuper()in constructors read more
- require generator functions to contain
yieldread more
- require let or const instead of var read more
- require semicolons read more
- enforce the consistent use of double quotes in JSX attributes read more
- enforce a maximum line length read more
- enforce a maximum number of statements allowed in function blocks read more
- prevent missing displayName in a React component definition read more
- checks all JSX components and verifies that no forbidden propsTypes are used. read more
- aims to maintain consistency around the spacing inside of JSX attributes and expressions inside element children. read more
- warn if an element that likely requires a key prop--namely, one present in an array literal or an arrow function expression. read more
- prevent duplicate properties in JSX read more
- disallows undeclared variables in JSX read more
- enforces coding style that user-defined JSX components are defined and referenced in PascalCase. read more
- prevent React being incorrectly marked as unused read more
- prevent variables used in JSX to be incorrectly marked as unused read more
- prevent usage of dangerous JSX properties read more
- prevent usage of setState in componentDidMount read more
- prevent usage of setState in componentDidUpdate read more
- prevent direct mutation of this.state read more
- prevent multiple component definition per file read more
- prevent usage of unknown DOM property read more
- enforce ES6 class for React Components read more
- prevent missing props validation in a React component definition read more
- Prevent missing React when using JSX read more
- prevent extra closing tags for components without children read more
- enforce component methods order read more