# Road Map ## ESLint - [ ] "accessor-pairs" - [ ] "array-bracket-newline" - [ ] "array-bracket-spacing" - [ ] "array-callback-return" - [ ] "array-element-newline" - [ ] "arrow-body-style" - [X] "arrow-parens" - [X] "arrow-spacing" - [ ] "block-scoped-var" - [ ] "block-spacing" - [X] "brace-style" - [ ] "callback-return" - [X] "camelcase" - [ ] "capitalized-comments" - [X] "class-methods-use-this" - [X] "comma-dangle" - [X] "comma-spacing" - [ ] "comma-style" - [ ] "complexity" - [ ] "computed-property-spacing" - [ ] "consistent-return" - [ ] "consistent-this" - [ ] "constructor-super" - [ ] "curly" - [ ] "default-case" - [ ] "default-case-last" - [ ] "default-param-last" - [ ] "dot-location" - [ ] "dot-notation" - [X] "eol-last" - [X] "eqeqeq" - [ ] "for-direction" - [ ] "func-call-spacing" - [ ] "func-name-matching" - [ ] "func-names" - [ ] "func-style" - [ ] "function-call-argument-newline" - [ ] "function-paren-newline" - [ ] "generator-star-spacing" - [ ] "getter-return" - [ ] "global-require" - [ ] "grouped-accessor-pairs" - [ ] "guard-for-in" - [ ] "handle-callback-err" - [ ] "id-blacklist" - [X] "id-length" - [ ] "id-match" - [ ] "implicit-arrow-linebreak" - [X] "indent" - [X] "indent-legacy" - [ ] "init-declarations" - [ ] "jsx-quotes" - [X] "key-spacing" - [X] "keyword-spacing" - [ ] "line-comment-position" - [X] "linebreak-style" - [ ] "lines-around-comment" - [X] "lines-around-directive" - [ ] "lines-between-class-members" - [ ] "max-classes-per-file" - [ ] "max-depth" - [ ] "max-len" - [ ] "max-lines" - [ ] "max-lines-per-function" - [ ] "max-nested-callbacks" - [ ] "max-params" - [X] "max-statements" - [ ] "max-statements-per-line" - [X] "multiline-comment-style" - [ ] "multiline-ternary" - [X] "new-cap" - [ ] "new-parens" - [X] "newline-after-var" - [X] "newline-before-return" - [ ] "newline-per-chained-call" - [X] "no-alert" - [ ] "no-array-constructor" - [ ] "no-async-promise-executor" - [ ] "no-await-in-loop" - [ ] "no-bitwise" - [ ] "no-buffer-constructor" - [ ] "no-caller" - [ ] "no-case-declarations" - [X] "no-catch-shadow" - [ ] "no-class-assign" - [ ] "no-compare-neg-zero" - [ ] "no-cond-assign" - [ ] "no-confusing-arrow" - [X] "no-console" - [ ] "no-const-assign" - [ ] "no-constant-condition" - [ ] "no-constructor-return" - [ ] "no-continue" - [ ] "no-control-regex" - [X] "no-debugger" - [ ] "no-delete-var" - [ ] "no-div-regex" - [ ] "no-dupe-args" - [ ] "no-dupe-class-members" - [ ] "no-dupe-else-if" - [ ] "no-dupe-keys" - [ ] "no-duplicate-case" - [ ] "no-duplicate-imports" - [ ] "no-else-return" - [ ] "no-empty" - [ ] "no-empty-character-class" - [ ] "no-empty-function" - [ ] "no-empty-pattern" - [ ] "no-eq-null" - [X] "no-eval" - [ ] "no-ex-assign" - [ ] "no-extend-native" - [ ] "no-extra-bind" - [ ] "no-extra-boolean-cast" - [ ] "no-extra-label" - [ ] "no-extra-parens" - [X] "no-extra-semi" - [ ] "no-fallthrough" - [ ] "no-floating-decimal" - [ ] "no-func-assign" - [ ] "no-global-assign" - [ ] "no-implicit-coercion" - [ ] "no-implicit-globals" - [ ] "no-implied-eval" - [ ] "no-import-assign" - [ ] "no-inline-comments" - [ ] "no-inner-declarations" - [ ] "no-invalid-regexp" - [ ] "no-invalid-this" - [ ] "no-irregular-whitespace" - [ ] "no-iterator" - [ ] "no-label-var" - [ ] "no-labels" - [ ] "no-lone-blocks" - [ ] "no-lonely-if" - [ ] "no-loop-func" - [ ] "no-magic-numbers" - [ ] "no-misleading-character-class" - [ ] "no-mixed-operators" - [ ] "no-mixed-requires" - [ ] "no-mixed-spaces-and-tabs" - [ ] "no-multi-assign" - [X] "no-multi-spaces" - [ ] "no-multi-str" - [X] "no-multiple-empty-lines" - [X] "no-native-reassign" - [ ] "no-negated-condition" - [X] "no-negated-in-lhs" - [ ] "no-nested-ternary" - [ ] "no-new" - [ ] "no-new-func" - [ ] "no-new-object" - [ ] "no-new-require" - [ ] "no-new-symbol" - [ ] "no-new-wrappers" - [ ] "no-obj-calls" - [ ] "no-octal" - [ ] "no-octal-escape" - [ ] "no-param-reassign" - [ ] "no-path-concat" - [ ] "no-plusplus" - [ ] "no-process-env" - [ ] "no-process-exit" - [ ] "no-proto" - [ ] "no-prototype-builtins" - [ ] "no-redeclare" - [ ] "no-regex-spaces" - [ ] "no-restricted-exports" - [ ] "no-restricted-globals" - [ ] "no-restricted-imports" - [ ] "no-restricted-modules" - [ ] "no-restricted-properties" - [ ] "no-restricted-syntax" - [ ] "no-return-assign" - [ ] "no-return-await" - [ ] "no-script-url" - [ ] "no-self-assign" - [ ] "no-self-compare" - [ ] "no-sequences" - [ ] "no-setter-return" - [ ] "no-shadow" - [ ] "no-shadow-restricted-names" - [X] "no-spaced-func" - [ ] "no-sparse-arrays" - [ ] "no-sync" - [X] "no-tabs" - [ ] "no-template-curly-in-string" - [X] "no-ternary" - [ ] "no-this-before-super" - [ ] "no-throw-literal" - [ ] "no-trailing-spaces" - [ ] "no-undef" - [ ] "no-undef-init" - [X] "no-undefined" - [X] "no-underscore-dangle" - [ ] "no-unexpected-multiline" - [ ] "no-unmodified-loop-condition" - [ ] "no-unneeded-ternary" - [ ] "no-unreachable" - [ ] "no-unsafe-finally" - [ ] "no-unsafe-negation" - [ ] "no-unused-expressions" - [ ] "no-unused-labels" - [X] "no-unused-vars" - [ ] "no-use-before-define" - [ ] "no-useless-backreference" - [ ] "no-useless-call" - [ ] "no-useless-catch" - [ ] "no-useless-computed-key" - [ ] "no-useless-concat" - [ ] "no-useless-constructor" - [ ] "no-useless-escape" - [ ] "no-useless-rename" - [ ] "no-useless-return" - [ ] "no-var" - [ ] "no-void" - [ ] "no-warning-comments" - [ ] "no-whitespace-before-property" - [ ] "no-with" - [ ] "nonblock-statement-body-position" - [X] "object-curly-newline" - [X] "object-curly-spacing" - [ ] "object-property-newline" - [ ] "object-shorthand" - [X] "one-var" - [ ] "one-var-declaration-per-line" - [ ] "operator-assignment" - [ ] "operator-linebreak" - [ ] "padded-blocks" - [ ] "padding-line-between-statements" - [ ] "prefer-arrow-callback" - [ ] "prefer-const" - [ ] "prefer-destructuring" - [ ] "prefer-exponentiation-operator" - [ ] "prefer-named-capture-group" - [ ] "prefer-numeric-literals" - [ ] "prefer-object-spread" - [ ] "prefer-promise-reject-errors" - [X] "prefer-reflect" - [ ] "prefer-regex-literals" - [ ] "prefer-rest-params" - [ ] "prefer-spread" - [ ] "prefer-template" - [X] "quote-props" - [X] "quotes" - [ ] "radix" - [ ] "require-atomic-updates" - [ ] "require-await" - [X] "require-jsdoc" - [ ] "require-unicode-regexp" - [ ] "require-yield" - [ ] "rest-spread-spacing" - [X] "semi" - [X] "semi-spacing" - [X] "semi-style" - [X] "sort-imports" - [X] "sort-keys" - [X] "sort-vars" - [X] "space-before-blocks" - [X] "space-before-function-paren" - [ ] "space-in-parens" - [ ] "space-infix-ops" - [ ] "space-unary-ops" - [ ] "spaced-comment" - [ ] "strict" - [ ] "switch-colon-spacing" - [ ] "symbol-description" - [ ] "template-curly-spacing" - [ ] "template-tag-spacing" - [ ] "unicode-bom" - [ ] "use-isnan" - [X] "valid-jsdoc" - [X] "valid-typeof" - [ ] "vars-on-top" - [ ] "wrap-iife" - [ ] "wrap-regex" - [ ] "yield-star-spacing" - [ ] "yoda" ## Import - [ ] "default" - [ ] "dynamic-import-chunkname" - [ ] "export" - [X] "exports-last" - [ ] "extensions" - [X] "first" - [ ] "group-exports" - [ ] "max-dependencies" - [ ] "named" - [ ] "namespace" - [X] "newline-after-import" - [ ] "no-absolute-path" - [ ] "no-amd" - [ ] "no-anonymous-default-export" - [ ] "no-commonjs" - [ ] "no-cycle" - [ ] "no-default-export" - [ ] "no-deprecated" - [ ] "no-duplicates" - [ ] "no-dynamic-require" - [ ] "no-extraneous-dependencies" - [ ] "no-internal-modules" - [ ] "no-mutable-exports" - [ ] "no-named-as-default" - [ ] "no-named-as-default-member" - [ ] "no-named-default" - [ ] "no-named-export" - [ ] "no-namespace" - [ ] "no-nodejs-modules" - [ ] "no-relative-parent-imports" - [ ] "no-restricted-paths" - [ ] "no-self-import" - [ ] "no-unassigned-import" - [ ] "no-unresolved" - [ ] "no-unused-modules" - [ ] "no-useless-path-segments" - [X] "no-webpack-loader-syntax" - [ ] "order" - [ ] "prefer-default-export" - [ ] "unambiguous" ## TypeScript - [ ] "adjacent-overload-signatures" - [ ] "array-type" - [ ] "await-thenable" - [ ] "ban-ts-comment" - [ ] "ban-ts-ignore" - [ ] "ban-types" - [ ] "brace-style" - [ ] "camelcase" - [ ] "class-name-casing" - [ ] "comma-spacing" - [ ] "consistent-type-assertions" - [ ] "consistent-type-definitions" - [ ] "default-param-last" - [ ] "explicit-function-return-type" - [ ] "explicit-member-accessibility" - [ ] "explicit-module-boundary-types" - [ ] "func-call-spacing" - [ ] "generic-type-naming" - [X] "indent" - [X] "interface-name-prefix" - [ ] "member-delimiter-style" - [ ] "member-naming" - [ ] "member-ordering" - [ ] "naming-convention" - [ ] "no-array-constructor" - [ ] "no-dupe-class-members" - [ ] "no-dynamic-delete" - [ ] "no-empty-function" - [X] "no-empty-interface" - [X] "no-explicit-any" - [ ] "no-extra-non-null-assertion" - [ ] "no-extra-parens" - [ ] "no-extra-semi" - [ ] "no-extraneous-class" - [ ] "no-floating-promises" - [ ] "no-for-in-array" - [ ] "no-implied-eval" - [ ] "no-inferrable-types" - [ ] "no-magic-numbers" - [ ] "no-misused-new" - [ ] "no-misused-promises" - [ ] "no-namespace" - [ ] "no-non-null-asserted-optional-chain" - [ ] "no-non-null-assertion" - [ ] "no-parameter-properties" - [ ] "no-require-imports" - [ ] "no-this-alias" - [ ] "no-throw-literal" - [ ] "no-type-alias" - [ ] "no-unnecessary-boolean-literal-compare" - [ ] "no-unnecessary-condition" - [ ] "no-unnecessary-qualifier" - [ ] "no-unnecessary-type-arguments" - [ ] "no-unnecessary-type-assertion" - [ ] "no-untyped-public-signature" - [ ] "no-unused-expressions" - [ ] "no-unused-vars" - [ ] "no-unused-vars-experimental" - [ ] "no-use-before-define" - [ ] "no-useless-constructor" - [ ] "no-var-requires" - [ ] "prefer-as-const" - [ ] "prefer-for-of" - [ ] "prefer-function-type" - [ ] "prefer-includes" - [ ] "prefer-namespace-keyword" - [ ] "prefer-nullish-coalescing" - [ ] "prefer-optional-chain" - [ ] "prefer-readonly" - [ ] "prefer-regexp-exec" - [ ] "prefer-string-starts-ends-with" - [ ] "promise-function-async" - [X] "quotes" - [ ] "require-array-sort-compare" - [ ] "require-await" - [ ] "restrict-plus-operands" - [ ] "restrict-template-expressions" - [ ] "return-await" - [X] "semi" - [ ] "space-before-function-paren" - [X] "strict-boolean-expressions" - [ ] "switch-exhaustiveness-check" - [ ] "triple-slash-reference" - [ ] "type-annotation-spacing" - [ ] "typedef" - [ ] "unbound-method" - [ ] "unified-signatures"