Skip to content

Instantly share code, notes, and snippets.

@cangoektas
Last active November 10, 2018 01:21
Show Gist options
  • Star 6 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cangoektas/a4727584a1cbd687ddaad30cf906caff to your computer and use it in GitHub Desktop.
Save cangoektas/a4727584a1cbd687ddaad30cf906caff to your computer and use it in GitHub Desktop.
Core rule settings of popular ESLint configs

Core rule settings of popular ESLint configs

An overview of how popular ESLint configs use the latest core rules. The rules are listed in the order they appear on the ESLint rules page: https://eslint.org/docs/rules/.

Configs

Name Weekly NPM Downloads
eslint:recommended (installed with ESLint)
airbnb         699,637          
standard                     415,043          
google 51,061
xo 29,620
plugin-shopify 14,508
fbjs 3,339
fbjs-opensource 1,195

Legend

  • 🏳️: "off"
  • ⚠️: "warning"
  • ❌: "error"

Possible Errors

Rule eslint:recommended airbnb standard google xo plugin-shopify fbjs fbjs-opensource
for-direction 🏳️ 🏳️ 🏳️ 🏳️
getter-return 🏳️ 🏳️ 🏳️ 🏳️
no-await-in-loop 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-compare-neg-zero 🏳️ 🏳️ 🏳️
no-cond-assign 🏳️ 🏳️ ⚠️
no-console 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
no-constant-condition 🏳️ 🏳️ ⚠️
no-control-regex 🏳️ 🏳️ ⚠️
no-debugger 🏳️ 🏳️
no-dupe-args 🏳️
no-dupe-keys 🏳️
no-duplicate-case 🏳️ ⚠️ ⚠️
no-empty-character-class 🏳️ ⚠️ ⚠️
no-empty 🏳️ 🏳️ 🏳️ ⚠️
no-ex-assign 🏳️ ⚠️ ⚠️
no-extra-boolean-cast 🏳️ ⚠️ ⚠️
no-extra-parens 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️ 🏳️
no-extra-semi 🏳️ 🏳️ ⚠️ ⚠️
no-func-assign 🏳️
no-inner-declarations 🏳️ 🏳️ ⚠️
no-invalid-regexp 🏳️ ⚠️ ⚠️
no-irregular-whitespace ⚠️ ⚠️
no-obj-calls 🏳️
no-prototype-builtins 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-regex-spaces 🏳️ ⚠️ ⚠️
no-sparse-arrays 🏳️
no-template-curly-in-string 🏳️ 🏳️ 🏳️ 🏳️
no-unexpected-multiline 🏳️ ⚠️
no-unreachable 🏳️
no-unsafe-finally 🏳️ 🏳️ ⚠️
no-unsafe-negation 🏳️ 🏳️
use-isnan 🏳️
valid-jsdoc 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
valid-typeof 🏳️

Best Practices

Rule eslint:recommended airbnb standard google xo plugin-shopify fbjs fbjs-opensource
accessor-pairs 🏳️ 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
array-callback-return 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
block-scoped-var 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
class-methods-use-this 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
complexity 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
consistent-return 🏳️ 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
curly 🏳️ ⚠️ ⚠️
default-case 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
dot-location 🏳️ 🏳️ 🏳️ ⚠️
dot-notation 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
eqeqeq 🏳️ 🏳️ 🏳️ ⚠️
guard-for-in 🏳️ 🏳️ 🏳️ 🏳️
no-alert 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-caller 🏳️
no-case-declarations 🏳️ 🏳️ 🏳️ ⚠️
no-div-regex 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-else-return 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-empty-function 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-empty-pattern 🏳️ ⚠️ ⚠️
no-eq-null 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-eval 🏳️ 🏳️
no-extend-native 🏳️ ⚠️ ⚠️
no-extra-bind 🏳️ ⚠️ ⚠️
no-extra-label 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-fallthrough 🏳️ ⚠️ ⚠️
no-floating-decimal 🏳️ 🏳️
no-global-assign 🏳️ 🏳️
no-implicit-coercion 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-implicit-globals 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-implied-eval 🏳️ 🏳️
no-invalid-this 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-iterator 🏳️ 🏳️ 🏳️ ⚠️
no-labels 🏳️ 🏳️
no-lone-blocks 🏳️ 🏳️ ⚠️ ⚠️
no-loop-func 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-magic-numbers 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-multi-spaces 🏳️ 🏳️ ⚠️
no-multi-str 🏳️ 🏳️
no-new 🏳️ 🏳️ ⚠️ ⚠️
no-new-func 🏳️ 🏳️
no-new-wrappers 🏳️ ⚠️ ⚠️
no-octal 🏳️ ⚠️ ⚠️
no-octal-escape 🏳️ 🏳️ ⚠️ ⚠️
no-param-reassign 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-proto 🏳️ 🏳️
no-redeclare 🏳️ ⚠️ ⚠️
no-restricted-properties 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-return-assign 🏳️ 🏳️ 🏳️ ⚠️
no-return-await 🏳️ 🏳️ 🏳️ 🏳️
no-script-url 🏳️ 🏳️ 🏳️ 🏳️
no-self-assign 🏳️ 🏳️ ⚠️
no-self-compare 🏳️ 🏳️ ⚠️ ⚠️
no-sequences 🏳️ 🏳️ ⚠️ ⚠️
no-throw-literal 🏳️ ⚠️
no-unmodified-loop-condition 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-unused-expressions 🏳️ 🏳️ 🏳️ 🏳️
no-unused-labels 🏳️ 🏳️ 🏳️ ⚠️
no-useless-call 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
no-useless-concat 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
no-useless-escape 🏳️ 🏳️ ⚠️
no-useless-return 🏳️ 🏳️ 🏳️ ⚠️
no-void 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-warning-comments 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-with 🏳️ 🏳️ ⚠️
prefer-promise-reject-errors 🏳️ 🏳️ 🏳️ 🏳️
radix 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
require-await 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
vars-on-top 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
wrap-iife 🏳️ 🏳️ 🏳️ ⚠️
yoda 🏳️ 🏳️ 🏳️ ⚠️

Strict Mode

Rule eslint:recommended airbnb standard google xo plugin-shopify fbjs fbjs-opensource
strict 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️

Variables

Rule eslint:recommended airbnb standard google xo plugin-shopify fbjs fbjs-opensource
init-declarations 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-catch-shadow 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-delete-var 🏳️
no-label-var 🏳️ 🏳️ ⚠️ ⚠️
no-restricted-globals 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-shadow 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-shadow-restricted-names 🏳️ 🏳️ ⚠️ ⚠️
no-undef 🏳️
no-undef-init 🏳️ 🏳️ 🏳️ 🏳️
no-undefined 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-unused-vars ⚠️ ⚠️
no-use-before-define 🏳️ 🏳️ 🏳️ 🏳️

Node.js and CommonJS

Rule eslint:recommended airbnb standard google xo plugin-shopify fbjs fbjs-opensource
callback-return 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
global-require 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
handle-callback-err 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-buffer-constructor 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-mixed-requires 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-new-require 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-path-concat 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-process-env 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-process-exit 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-restricted-modules 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-sync 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️

Stylistic Issues

Rule eslint:recommended airbnb standard google xo plugin-shopify fbjs fbjs-opensource
array-bracket-newline 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
array-bracket-spacing 🏳️ 🏳️ ⚠️ ⚠️
array-element-newline 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
block-spacing 🏳️ 🏳️ 🏳️ ⚠️
brace-style 🏳️ ⚠️ ⚠️
camelcase 🏳️ 🏳️ ⚠️
capitalized-comments 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
comma-dangle 🏳️ ⚠️ ⚠️
comma-spacing 🏳️ ⚠️ ⚠️
comma-style 🏳️ ⚠️ ⚠️
computed-property-spacing 🏳️ 🏳️ ⚠️ ⚠️
consistent-this 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
eol-last 🏳️ 🏳️ ⚠️
func-call-spacing 🏳️ 🏳️ ⚠️
func-name-matching 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
func-names 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
func-style 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
function-paren-newline 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
id-blacklist 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
id-length 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
id-match 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
implicit-arrow-linebreak 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
indent 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
jsx-quotes 🏳️ 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
key-spacing 🏳️ 🏳️ ⚠️
keyword-spacing 🏳️ ⚠️ ⚠️
line-comment-position 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
linebreak-style 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
lines-around-comment 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
lines-between-class-members 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
max-depth 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
max-len 🏳️ 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
max-lines 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
max-nested-callbacks 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
max-params 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
max-statements 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
max-statements-per-line 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
multiline-comment-style 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
multiline-ternary 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
new-cap 🏳️ 🏳️ 🏳️
new-parens 🏳️ 🏳️
newline-per-chained-call 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-array-constructor 🏳️ ⚠️
no-bitwise 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
no-continue 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-inline-comments 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-lonely-if 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-mixed-operators 🏳️ 🏳️ 🏳️ 🏳️
no-mixed-spaces-and-tabs
no-multi-assign 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-multiple-empty-lines 🏳️ 🏳️ ⚠️
no-negated-condition 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-nested-ternary 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-new-object 🏳️ ⚠️ ⚠️
no-plusplus 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-restricted-syntax 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-tabs 🏳️ 🏳️ 🏳️
no-ternary 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-trailing-spaces 🏳️ 🏳️ ⚠️
no-underscore-dangle 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-unneeded-ternary 🏳️ 🏳️ ⚠️ ⚠️
no-whitespace-before-property 🏳️ 🏳️ 🏳️ ⚠️
nonblock-statement-body-position 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
object-curly-newline 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
object-curly-spacing 🏳️ 🏳️ 🏳️ ⚠️
object-property-newline 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
one-var 🏳️ ⚠️ ⚠️
one-var-declaration-per-line 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
operator-assignment 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
operator-linebreak 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
padded-blocks 🏳️ 🏳️ 🏳️ 🏳️
padding-line-between-statements 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
quote-props 🏳️ 🏳️ 🏳️ ⚠️
quotes 🏳️ ⚠️ ⚠️
require-jsdoc 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
semi 🏳️ ⚠️ ⚠️
semi-spacing 🏳️ ⚠️ ⚠️
semi-style 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
sort-keys 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
sort-vars 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
space-before-blocks 🏳️ ⚠️ ⚠️
space-before-function-paren 🏳️ ⚠️ ⚠️
space-in-parens 🏳️ 🏳️ 🏳️ ⚠️
space-infix-ops 🏳️ 🏳️ ⚠️ ⚠️
space-unary-ops 🏳️ 🏳️ ⚠️ ⚠️
spaced-comment 🏳️ 🏳️ ⚠️
switch-colon-spacing 🏳️ 🏳️ 🏳️ 🏳️
template-tag-spacing 🏳️ 🏳️ 🏳️ 🏳️
unicode-bom 🏳️ 🏳️ 🏳️ ⚠️
wrap-reg 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️

ECMAScript 6

Rule eslint:recommended airbnb standard google xo plugin-shopify fbjs fbjs-opensource
arrow-body-style 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
arrow-parens 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
arrow-spacing 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
constructor-super 🏳️
generator-star-spacing 🏳️ 🏳️ 🏳️ ⚠️
no-class-assign 🏳️ 🏳️ ⚠️ ⚠️
no-confusing-arrow 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-const-assign 🏳️ 🏳️
no-dupe-class-members 🏳️ 🏳️
no-duplicate-imports 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-new-symbol 🏳️ 🏳️ ⚠️
no-restricted-imports 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
no-this-before-super 🏳️
no-useless-computed-key 🏳️ 🏳️ 🏳️ ⚠️ ⚠️
no-useless-constructor 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-useless-rename 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
no-var 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
object-shorthand 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
prefer-arrow-callback 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
prefer-const 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
prefer-destructuring 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
prefer-numeric-literals 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
prefer-rest-params 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
prefer-spread 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
prefer-template 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
require-yield 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
rest-spread-spacing 🏳️ 🏳️ 🏳️ ⚠️
sort-imports 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
symbol-description 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
template-curly-spacing 🏳️ 🏳️ 🏳️ 🏳️ ⚠️
yield-star-spaci 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️ 🏳️
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment