no-empty-function | off | Allows empty functions |
no-unused-vars | off | Disabled in favor of unused-imports/no-unused-vars |
arrow-body-style | ['error', 'as-needed'] | Enforces concise arrow function bodies when possible |
unused-imports/no-unused-vars | warn | Warns about unused variables |
eol-last | ['error', 'always'] | Requires newline at the end of files |
no-else-return | warn | Suggests omitting else when an if block always executes a return statement |
logical-assignment-operators | warn | Encourages use of logical assignment operators |
no-implicit-coercion | warn | Warns against implicit type coercion |
operator-assignment | warn | Suggests using shorthand operators where possible |
prefer-destructuring | warn | Encourages use of object and array destructuring |
prefer-object-has-own | warn | Suggests using Object.hasOwn() instead of Object.prototype.hasOwnProperty.call() |
no-console | ['warn', { allow: ['debug'] }] | Warns about console usage, except for console.debug |
no-use-before-define | ['error', { functions: false }] | Disallows use of variables before they are defined, except for functions |
no-param-reassign | ['error', { props: false }] | Disallows reassigning function parameters, but allows modifying properties |
no-underscore-dangle | off | Allows use of underscores in identifiers |
no-shadow | off | Allows variable shadowing |
no-unused-expressions | ['error', { allowShortCircuit: true }] | Disallows unused expressions, but allows short circuit evaluations |
no-shadow-restricted-names | error | Disallows shadowing of restricted names |
curly | ['error', 'multi-line', 'consistent'] | Enforces consistent use of curly braces |
newline-before-return | error | Requires an empty line before return statements |
newline-per-chained-call | ['error', { ignoreChainWithDepth: 1 }] | Requires a newline after each call in a method chain |
multiline-ternary | ['error', 'always-multiline'] | Enforces newlines between operands of ternary expressions if the expression spans multiple lines |
brace-style | ['error', 'stroustrup'] | Enforces Stroustrup style for braces |
eqeqeq | ['error', 'smart'] | Requires the use of === and !==, except when comparing with null |
antfu/if-newline | error | Enforces newline after if statements |
style/no-confusing-arrow | error | Disallows arrow functions where they could be confused with comparisons |
style/newline-per-chained-call | error | Requires a newline after each call in a method chain |
style/wrap-regex | error | Requires regex literals to be wrapped in parentheses |
style/type-named-tuple-spacing | error | Enforces consistent spacing in named tuple types |
style/max-statements-per-line | ['error', { max: 80 }] | Limits the number of statements per line |
style/array-bracket-newline | ['error', { multiline: true }] | Enforces line breaks after opening and before closing array brackets for multiline arrays |
import/order | (complex configuration) | Enforces a specific import order |