Rules sources
Ce contenu n’est pas encore disponible dans votre langue.
Biome exclusive rules
Section titled “Biome exclusive rules”- noAccumulatingSpread
- noConstEnum
- noDelete
- noDynamicNamespaceImportAccess
- noEmptyTypeParameters
- noEnum
- noEvolvingTypes
- noExportedImports
- noGlobalIsFinite
- noGlobalIsNan
- noImplicitAnyLet
- noInlineStyles
- noMisleadingReturnType
- noRedundantDefaultExport
- noRedundantUseStrict
- noRenderReturnValue
- noShoutyConstants
- noSuspiciousSemicolonInJsx
- noSvgWithoutTitle
- noUnusedFunctionParameters
- noUnusedTemplateLiteral
- noUselessCatchBinding
- noUselessContinue
- noUselessEscapeInString
- noUselessStringRaw
- noVoidTypeReturn
- noVueOptionsApi
- useDisposables
- useImportExtensions
- useJsonImportAttributes
- useNodeAssertStrict
- useSimpleNumberKeys
- useSimplifiedLogicExpression
- useSortedClasses
- useStaticResponseMethods
- useStrictMode
- useTopLevelRegex
- useUniqueElementIds
Rules from other sources
Section titled “Rules from other sources”@e18e/eslint-plugin
Section titled “@e18e/eslint-plugin”| @e18e/eslint-plugin Rules name | Biome Rules name | | ---- | ---- | | prefer-array-at |useAtIndex | | prefer-date-now |useDateNow | | prefer-exponentiation-operator |useExponentiationOperator | | prefer-object-has-own |noPrototypeBuiltins | | prefer-spread-syntax |useObjectSpread (inspired) |
@eslint-react/eslint-plugin
Section titled “@eslint-react/eslint-plugin”| @eslint-react/eslint-plugin Rules name | Biome Rules name | | ---- | ---- | | component-hook-factories |noComponentHookFactories | | dom-no-dangerously-set-innerhtml |noDangerouslySetInnerHtml | | dom-no-dangerously-set-innerhtml-with-children |noDangerouslySetInnerHtmlWithChildren | | dom-no-missing-button-type |useButtonType | | dom-no-missing-iframe-sandbox |useIframeSandbox | | dom-no-script-url |noScriptUrl | | dom-no-unsafe-target-blank |noBlankTarget (inspired) | | dom-no-void-elements-with-children |noVoidElementsWithChildren | | exhaustive-deps |useExhaustiveDependencies | | jsx-no-children-prop |noChildrenProp | | jsx-no-leaked-dollar |noJsxLeakedDollar | | jsx-no-namespace |noJsxNamespace | | jsx-no-useless-fragment |noUselessFragments | | no-array-index-key |noArrayIndexKey | | no-forward-ref |noReactForwardRef | | no-missing-key |useJsxKeyInIterable | | no-nested-component-definitions |noNestedComponentDefinitions | | rsc-function-definition |useReactAsyncServerFunction |
@html-eslint/eslint-plugin
Section titled “@html-eslint/eslint-plugin”| @html-eslint/eslint-plugin Rules name | Biome Rules name | | ---- | ---- | | no-accesskey-attrs |noAccessKey (inspired) |
@mysticatea/eslint-plugin
Section titled “@mysticatea/eslint-plugin”| @mysticatea/eslint-plugin Rules name | Biome Rules name | | ---- | ---- | | no-this-in-static |noThisInStatic |
@next/eslint-plugin-next
Section titled “@next/eslint-plugin-next”| @next/eslint-plugin-next Rules name | Biome Rules name | | ---- | ---- | | google-font-display |useGoogleFontDisplay | | google-font-preconnect |useGoogleFontPreconnect | | inline-script-id |useInlineScriptId | | no-async-client-component |noNextAsyncClientComponent | | no-before-interactive-script-outside-document |noBeforeInteractiveScriptOutsideDocument | | no-document-import-in-page |noDocumentImportInPage | | no-head-element |noHeadElement | | no-head-import-in-document |noHeadImportInDocument | | no-img-element |noImgElement | | no-sync-scripts |noSyncScripts | | no-unwanted-polyfillio |noUnwantedPolyfillio |
@react-native/eslint-plugin
Section titled “@react-native/eslint-plugin”| @react-native/eslint-plugin Rules name | Biome Rules name | | ---- | ---- | | no-deep-imports |noReactNativeDeepImports |
@stylistic/eslint-plugin
Section titled “@stylistic/eslint-plugin”| @stylistic/eslint-plugin Rules name | Biome Rules name | | ---- | ---- | | jsx-self-closing-comp |useSelfClosingElements |
@vitest/eslint-plugin
Section titled “@vitest/eslint-plugin”| @vitest/eslint-plugin Rules name | Biome Rules name | | ---- | ---- | | consistent-test-it |useConsistentTestIt (inspired) | | expect-expect |useExpect | | max-nested-describe |noExcessiveNestedTestSuites | | no-conditional-expect |noConditionalExpect | | no-disabled-tests |noSkippedTests (inspired) | | no-done-callback |noDoneCallback | | no-duplicate-hooks |noDuplicateTestHooks (inspired) | | no-focused-tests |noFocusedTests (inspired) | | no-identical-title |noIdenticalTestTitle | | no-standalone-expect |noMisplacedAssertion (inspired) | | prefer-hooks-in-order |useTestHooksInOrder | | prefer-hooks-on-top |useTestHooksOnTop |
Clippy
Section titled “Clippy”| Clippy Rules name | Biome Rules name | | ---- | ---- | | approx_constant |noApproximativeNumericConstant | | collapsible_else_if |useCollapsedElseIf | | collapsible_if |useCollapsedIf | | eq_op |noSelfCompare | | flat_map_identity |noFlatMapIdentity | | if_not_else |noNegationElse | | lossy_float_literal |noPrecisionLoss | | map_flatten |useFlatMap | | match_str_case_mismatch |noStringCaseMismatch | | min_max |noConstantMathMinMaxClamp | | misrefactored_assign_op |noMisrefactoredShorthandAssign | | needless_for_each |noForEach | | only_used_in_recursion |noParametersOnlyUsedInRecursion (inspired) | | redundant_else |noUselessElse (inspired) | | self_assignment |noSelfAssign | | too_many_arguments |useMaxParams | | unreadable_literal |useNumericSeparators |
Deno Lint
Section titled “Deno Lint”| Deno Lint Rules name | Biome Rules name | | ---- | ---- | | no-process-global |noProcessGlobal |
ESLint
Section titled “ESLint”| ESLint Rules name | Biome Rules name | | ---- | ---- | | array-callback-return |useIterableCallbackReturn | | arrow-body-style |useConsistentArrowReturn | | class-methods-use-this |useThisInClassMethods | | complexity |noExcessiveCognitiveComplexity (inspired) | | constructor-super |noInvalidConstructorSuper | | curly |useBlockStatements | | default-case |useDefaultSwitchClause | | default-case-last |useDefaultSwitchClauseLast | | default-param-last |useDefaultParameterLast | | dot-notation |useLiteralKeys | | eqeqeq |noDoubleEquals | | for-direction |useValidForDirection | | getter-return |useGetterReturn | | grouped-accessor-pairs |useGroupedAccessorPairs | | guard-for-in |useGuardForIn | | max-classes-per-file |noExcessiveClassesPerFile | | max-lines |noExcessiveLinesPerFile (inspired) | | max-lines-per-function |noExcessiveLinesPerFunction (inspired) | | max-nested-callbacks |noExcessiveNestedCallbacks | | max-params |useMaxParams | | no-alert |noAlert | | no-array-constructor |useArrayLiterals | | no-async-promise-executor |noAsyncPromiseExecutor | | no-await-in-loop |noAwaitInLoops | | no-bitwise |noBitwiseOperators | | no-case-declarations |noSwitchDeclarations | | no-class-assign |noClassAssign | | no-compare-neg-zero |noCompareNegZero | | no-cond-assign |noAssignInExpressions (inspired) | | no-console |noConsole | | no-const-assign |noConstAssign | | no-constant-binary-expression |noConstantBinaryExpressions | | no-constant-condition |noConstantCondition | | no-constructor-return |noConstructorReturn | | no-continue |noContinue | | no-control-regex |noControlCharactersInRegex | | no-debugger |noDebugger | | no-div-regex |noDivRegex | | no-dupe-args |noDuplicateParameters | | no-dupe-class-members |noDuplicateClassMembers | | no-dupe-else-if |noDuplicateElseIf | | no-dupe-keys |noDuplicateObjectKeys | | no-duplicate-case |noDuplicateCase | | no-else-return |noUselessElse (inspired) | | no-empty |noEmptyBlockStatements | | no-empty-character-class |noEmptyCharacterClassInRegex | | no-empty-function |noEmptyBlockStatements | | no-empty-pattern |noEmptyPattern | | no-empty-static-block |noEmptyBlockStatements | | no-eq-null |noEqualsToNull | | no-eval |noGlobalEval | | no-ex-assign |noCatchAssign | | no-extra-boolean-cast |noExtraBooleanCast | | no-extra-label |noUselessLabel | | no-fallthrough |noFallthroughSwitchClause | | no-func-assign |noFunctionAssign | | no-global-assign |noGlobalAssign | | no-implicit-coercion |noImplicitCoercions | | no-implied-eval |noImpliedEval | | no-import-assign |noImportAssign | | no-inner-declarations |noInnerDeclarations | | no-irregular-whitespace |noIrregularWhitespace | | no-label-var |noLabelVar | | no-labels |noConfusingLabels (inspired) | | no-lone-blocks |noUselessLoneBlockStatements | | no-lonely-if |useCollapsedElseIf | | no-loop-func |noLoopFunc | | no-loss-of-precision |noPrecisionLoss | | no-magic-numbers |noMagicNumbers (inspired) | | no-misleading-character-class |noMisleadingCharacterClass | | no-multi-assign |noMultiAssign (inspired) | | no-multi-str |noMultiStr | | no-negated-condition |noNegationElse | | no-nested-ternary |noNestedTernary | | no-new |noFloatingClasses | | no-new-func |noImpliedEval (inspired) | | no-new-native-nonconstructor |noInvalidBuiltinInstantiation | | no-new-wrappers |useConsistentBuiltinInstantiation | | no-nonoctal-decimal-escape |noNonoctalDecimalEscape | | no-obj-calls |noGlobalObjectCalls | | no-octal-escape |noOctalEscape | | no-param-reassign |noParameterAssign | | no-plusplus |noIncrementDecrement | | no-proto |noProto | | no-prototype-builtins |noPrototypeBuiltins | | no-redeclare |noRedeclare | | no-regex-spaces |noAdjacentSpacesInRegex | | no-restricted-globals |noRestrictedGlobals | | no-restricted-imports |noRestrictedImports | | no-return-assign |noReturnAssign | | no-script-url |noScriptUrl | | no-self-assign |noSelfAssign | | no-self-compare |noSelfCompare | | no-sequences |noCommaOperator | | no-setter-return |noSetterReturn | | no-shadow |noShadow | | no-shadow-restricted-names |noShadowRestrictedNames | | no-sparse-arrays |noSparseArray | | no-template-curly-in-string |noTemplateCurlyInString | | no-ternary |noTernary | | no-this-before-super |noUnreachableSuper | | no-throw-literal |useThrowOnlyError (inspired) | | no-unassigned-vars |noUnassignedVariables | | no-undef |noUndeclaredVariables | | no-undef-init |noUselessUndefinedInitialization | | no-unneeded-ternary |noUselessTernary | | no-unreachable |noUnreachable | | no-unsafe-finally |noUnsafeFinally | | no-unsafe-negation |noUnsafeNegation | | no-unsafe-optional-chaining |noUnsafeOptionalChaining | | no-unused-expressions |noUnusedExpressions | | no-unused-labels |noUnusedLabels | | no-unused-private-class-members |noUnusedPrivateClassMembers | | no-unused-vars |noUnusedVariables | | no-use-before-define |noInvalidUseBeforeDeclaration | | no-useless-backreference |noUselessRegexBackrefs | | no-useless-catch |noUselessCatch | | no-useless-computed-key |useLiteralKeys | | no-useless-concat |noUselessStringConcat | | no-useless-constructor |noUselessConstructor | | no-useless-escape |noUselessEscapeInRegex | | no-useless-rename |noUselessRename | | no-useless-return |noUselessReturn (inspired) | | no-var |noVar | | no-void |noVoid | | no-with |noWith | | object-shorthand |useConsistentObjectDefinitions (inspired) | | one-var |useSingleVarDeclarator | | operator-assignment |useShorthandAssign | | prefer-arrow-callback |useArrowFunction (inspired) | | prefer-const |useConst | | prefer-destructuring |useDestructuring (inspired) | | prefer-exponentiation-operator |useExponentiationOperator | | prefer-named-capture-group |useNamedCaptureGroup | | prefer-numeric-literals |useNumericLiterals | | prefer-object-has-own |noPrototypeBuiltins | | prefer-object-spread |useObjectSpread | | prefer-regex-literals |useRegexLiterals | | prefer-rest-params |noArguments | | prefer-spread |useSpread | | prefer-template |useTemplate | | preserve-caught-error |useErrorCause | | radix |useParseIntRadix | | require-await |useAwait | | require-unicode-regexp |useUnicodeRegex | | require-yield |useYield | | symbol-description |useSymbolDescription | | use-isnan |useIsNan | | valid-typeof |useValidTypeof | | vars-on-top |useVarsOnTop | | yoda |noYodaExpression |
eslint-plugin-barrel-files
Section titled “eslint-plugin-barrel-files”| eslint-plugin-barrel-files Rules name | Biome Rules name | | ---- | ---- | | avoid-barrel-files |noBarrelFile (inspired) | | avoid-namespace-import |noNamespaceImport | | avoid-re-export-all |noReExportAll |
eslint-plugin-drizzle
Section titled “eslint-plugin-drizzle”| eslint-plugin-drizzle Rules name | Biome Rules name | | ---- | ---- | | enforce-delete-with-where |noDrizzleDeleteWithoutWhere | | enforce-update-with-where |noDrizzleUpdateWithoutWhere |
eslint-plugin-import
Section titled “eslint-plugin-import”| eslint-plugin-import Rules name | Biome Rules name | | ---- | ---- | | enforce-node-protocol-usage |useNodejsImportProtocol | | exports-last |useExportsLast | | first |useImportsFirst | | named |noUnresolvedImports (inspired) | | no-commonjs |noCommonJs | | no-cycle |noImportCycles | | no-default-export |noDefaultExport | | no-deprecated |noDeprecatedImports (inspired) | | no-extraneous-dependencies |noUndeclaredDependencies | | no-nodejs-modules |noNodejsModules |
eslint-plugin-import-access
Section titled “eslint-plugin-import-access”| eslint-plugin-import-access Rules name | Biome Rules name | | ---- | ---- | | eslint-plugin-import-access |noPrivateImports |
eslint-plugin-jest
Section titled “eslint-plugin-jest”| eslint-plugin-jest Rules name | Biome Rules name | | ---- | ---- | | consistent-test-it |useConsistentTestIt (inspired) | | expect-expect |useExpect | | max-nested-describe |noExcessiveNestedTestSuites | | no-conditional-expect |noConditionalExpect | | no-disabled-tests |noSkippedTests (inspired) | | no-done-callback |noDoneCallback | | no-duplicate-hooks |noDuplicateTestHooks (inspired) | | no-export |noExportsInTest (inspired) | | no-focused-tests |noFocusedTests (inspired) | | no-identical-title |noIdenticalTestTitle | | no-standalone-expect |noMisplacedAssertion (inspired) | | prefer-hooks-in-order |useTestHooksInOrder | | prefer-hooks-on-top |useTestHooksOnTop |
eslint-plugin-jsdoc
Section titled “eslint-plugin-jsdoc”| eslint-plugin-jsdoc Rules name | Biome Rules name | | ---- | ---- | | no-multi-asterisks |useSingleJsDocAsterisk |
eslint-plugin-jsx-a11y
Section titled “eslint-plugin-jsx-a11y”| eslint-plugin-jsx-a11y Rules name | Biome Rules name | | ---- | ---- | | alt-text |useAltText | | anchor-ambiguous-text |noAmbiguousAnchorText | | anchor-has-content |useAnchorContent | | anchor-is-valid |useValidAnchor | | aria-activedescendant-has-tabindex |useAriaActivedescendantWithTabindex | | aria-props |useValidAriaProps | | aria-proptypes |useValidAriaValues | | aria-role |useValidAriaRole | | aria-unsupported-elements |noAriaUnsupportedElements | | autocomplete-valid |useValidAutocomplete | | click-events-have-key-events |useKeyWithClickEvents | | heading-has-content |useHeadingContent | | html-has-lang |useHtmlLang | | iframe-has-title |useIframeTitle | | img-redundant-alt |noRedundantAlt | | interactive-supports-focus |useFocusableInteractive | | label-has-associated-control |noLabelWithoutControl | | lang |useValidLang | | media-has-caption |useMediaCaption | | mouse-events-have-key-events |useKeyWithMouseEvents | | no-access-key |noAccessKey | | no-aria-hidden-on-focusable |noAriaHiddenOnFocusable | | no-autofocus |noAutofocus | | no-distracting-elements |noDistractingElements | | no-interactive-element-to-noninteractive-role |noInteractiveElementToNoninteractiveRole | | no-noninteractive-element-interactions |noNoninteractiveElementInteractions | | no-noninteractive-element-to-interactive-role |noNoninteractiveElementToInteractiveRole | | no-noninteractive-tabindex |noNoninteractiveTabindex | | no-redundant-roles |noRedundantRoles | | no-static-element-interactions |noStaticElementInteractions | | prefer-tag-over-role |useSemanticElements | | role-has-required-aria-props |useAriaPropsForRole | | role-supports-aria-props |useAriaPropsSupportedByRole | | scope |noHeaderScope | | tabindex-no-positive |noPositiveTabindex |
eslint-plugin-n
Section titled “eslint-plugin-n”| eslint-plugin-n Rules name | Biome Rules name | | ---- | ---- | | no-process-env |noProcessEnv |
eslint-plugin-no-secrets
Section titled “eslint-plugin-no-secrets”| eslint-plugin-no-secrets Rules name | Biome Rules name | | ---- | ---- | | no-secrets |noSecrets (inspired) |
eslint-plugin-playwright
Section titled “eslint-plugin-playwright”| eslint-plugin-playwright Rules name | Biome Rules name | | ---- | ---- | | expect-expect |useExpect | | missing-playwright-await |noPlaywrightMissingAwait | | no-conditional-expect |noConditionalExpect | | no-element-handle |noPlaywrightElementHandle | | no-eval |noPlaywrightEval | | no-force-option |noPlaywrightForceOption | | no-networkidle |noPlaywrightNetworkidle | | no-page-pause |noPlaywrightPagePause | | no-skipped-test |noSkippedTests (inspired) | | no-useless-await |noPlaywrightUselessAwait | | no-wait-for-navigation |noPlaywrightWaitForNavigation | | no-wait-for-selector |noPlaywrightWaitForSelector | | no-wait-for-timeout |noPlaywrightWaitForTimeout | | prefer-hooks-in-order |useTestHooksInOrder | | prefer-hooks-on-top |useTestHooksOnTop | | valid-describe-callback |usePlaywrightValidDescribeCallback |
eslint-plugin-promise
Section titled “eslint-plugin-promise”| eslint-plugin-promise Rules name | Biome Rules name | | ---- | ---- | | no-nesting |noNestedPromises |
eslint-plugin-qwik
Section titled “eslint-plugin-qwik”| eslint-plugin-qwik Rules name | Biome Rules name | | ---- | ---- | | jsx-a |useValidAnchor | | jsx-img |useImageSize | | jsx-key |useJsxKeyInIterable | | jsx-no-script-url |noScriptUrl | | loader-location |useQwikLoaderLocation | | no-react-props |noReactSpecificProps | | no-use-visible-task |noQwikUseVisibleTask | | prefer-classlist |useQwikClasslist | | use-method-usage |useQwikMethodUsage | | valid-lexical-scope |useQwikValidLexicalScope |
eslint-plugin-react
Section titled “eslint-plugin-react”| eslint-plugin-react Rules name | Biome Rules name | | ---- | ---- | | async-server-action |useReactAsyncServerFunction | | button-has-type |useButtonType | | forbid-elements |noRestrictedElements | | jsx-boolean-value |noImplicitBoolean (inspired) | | jsx-curly-brace-presence |useConsistentCurlyBraces (inspired) | | jsx-fragments |useFragmentSyntax | | jsx-key |useJsxKeyInIterable | | jsx-no-bind |noJsxPropsBind (inspired) | | jsx-no-comment-textnodes |noCommentText | | jsx-no-duplicate-props |noDuplicateJsxProps | | jsx-no-leaked-render |noLeakedRender (inspired) | | jsx-no-literals |noJsxLiterals | | jsx-no-script-url |noScriptUrl | | jsx-no-target-blank |noBlankTarget (inspired) | | jsx-no-useless-fragment |noUselessFragments | | jsx-props-no-spread-multi |noDuplicatedSpreadProps | | no-array-index-key |noArrayIndexKey | | no-children-prop |noChildrenProp | | no-danger |noDangerouslySetInnerHtml | | no-danger-with-children |noDangerouslySetInnerHtmlWithChildren | | no-string-refs |noReactStringRefs | | no-unknown-property |noUnknownAttribute | | void-dom-elements-no-children |noVoidElementsWithChildren |
eslint-plugin-react-dom
Section titled “eslint-plugin-react-dom”| eslint-plugin-react-dom Rules name | Biome Rules name | | ---- | ---- | | no-dangerously-set-innerhtml |noDangerouslySetInnerHtml | | no-dangerously-set-innerhtml-with-children |noDangerouslySetInnerHtmlWithChildren | | no-missing-button-type |useButtonType | | no-missing-iframe-sandbox |useIframeSandbox (inspired) | | no-script-url |noScriptUrl | | no-unsafe-target-blank |noBlankTarget (inspired) | | no-void-elements-with-children |noVoidElementsWithChildren |
eslint-plugin-react-hooks
Section titled “eslint-plugin-react-hooks”| eslint-plugin-react-hooks Rules name | Biome Rules name | | ---- | ---- | | component-hook-factories |noComponentHookFactories | | exhaustive-deps |useExhaustiveDependencies | | react-compiler |noReactPropAssignments | | rules-of-hooks |useHookAtTopLevel |
eslint-plugin-react-jsx
Section titled “eslint-plugin-react-jsx”| eslint-plugin-react-jsx Rules name | Biome Rules name | | ---- | ---- | | no-children-prop |noChildrenProp | | no-leaked-dollar |noJsxLeakedDollar | | no-namespace |noJsxNamespace | | no-useless-fragment |noUselessFragments |
eslint-plugin-react-native
Section titled “eslint-plugin-react-native”| eslint-plugin-react-native Rules name | Biome Rules name | | ---- | ---- | | no-color-literals |noReactNativeLiteralColors | | no-raw-text |noReactNativeRawText | | split-platform-components |useReactNativePlatformComponents (inspired) |
eslint-plugin-react-prefer-function-component
Section titled “eslint-plugin-react-prefer-function-component”| eslint-plugin-react-prefer-function-component Rules name | Biome Rules name | | ---- | ---- | | react-prefer-function-component |useReactFunctionComponents |
eslint-plugin-react-refresh
Section titled “eslint-plugin-react-refresh”| eslint-plugin-react-refresh Rules name | Biome Rules name | | ---- | ---- | | only-export-components |useComponentExportOnlyModules (inspired) |
eslint-plugin-react-rsc
Section titled “eslint-plugin-react-rsc”| eslint-plugin-react-rsc Rules name | Biome Rules name | | ---- | ---- | | function-definition |useReactAsyncServerFunction |
eslint-plugin-react-x
Section titled “eslint-plugin-react-x”| eslint-plugin-react-x Rules name | Biome Rules name | | ---- | ---- | | component-hook-factories |noComponentHookFactories | | exhaustive-deps |useExhaustiveDependencies | | no-array-index-key |noArrayIndexKey | | no-forward-ref |noReactForwardRef | | no-missing-key |useJsxKeyInIterable | | no-nested-component-definitions |noNestedComponentDefinitions |
eslint-plugin-regexp
Section titled “eslint-plugin-regexp”| eslint-plugin-regexp Rules name | Biome Rules name | | ---- | ---- | | no-useless-backreference |noUselessRegexBackrefs | | prefer-regexp-exec |useRegexpExec |
eslint-plugin-solid
Section titled “eslint-plugin-solid”| eslint-plugin-solid Rules name | Biome Rules name | | ---- | ---- | | jsx-no-script-url |noScriptUrl | | no-destructure |noSolidDestructuredProps (inspired) | | no-react-specific-props |noReactSpecificProps | | prefer-for |useSolidForComponent (inspired) |
eslint-plugin-sonarjs
Section titled “eslint-plugin-sonarjs”| eslint-plugin-sonarjs Rules name | Biome Rules name | | ---- | ---- | | cognitive-complexity |noExcessiveCognitiveComplexity | | prefer-while |useWhile |
eslint-plugin-turbo
Section titled “eslint-plugin-turbo”| eslint-plugin-turbo Rules name | Biome Rules name | | ---- | ---- | | no-undeclared-env-vars |noUndeclaredEnvVars |
eslint-plugin-unicorn
Section titled “eslint-plugin-unicorn”| eslint-plugin-unicorn Rules name | Biome Rules name | | ---- | ---- | | error-message |useErrorMessage | | explicit-length-check |useExplicitLengthCheck | | filename-case |useFilenamingConvention (inspired) | | new-for-builtins |noInvalidBuiltinInstantiation | | no-array-for-each |noForEach | | no-document-cookie |noDocumentCookie | | no-empty-file |noEmptySource | | no-for-loop |useForOf | | no-instanceof-array |useIsArray | | no-lonely-if |useCollapsedIf | | no-nested-ternary |noNestedTernary (inspired) | | no-static-only-class |noStaticOnlyClass | | no-thenable |noThenProperty | | no-useless-switch-case |noUselessSwitchCase | | no-useless-undefined |noUselessUndefined | | numeric-separators-style |useNumericSeparators | | prefer-array-flat-map |useFlatMap | | prefer-array-index-of |useIndexOf | | prefer-array-some |useArraySome (inspired) | | prefer-at |useAtIndex (inspired) | | prefer-date-now |useDateNow | | prefer-dom-node-text-content |useDomNodeTextContent | | prefer-global-this |useGlobalThis | | prefer-math-min-max |useMathMinMax | | prefer-module |noGlobalDirnameFilename (inspired) | | prefer-node-protocol |useNodejsImportProtocol | | prefer-number-properties |useNumberNamespace | | prefer-query-selector |useDomQuerySelector (inspired) | | prefer-regexp-test |useRegexpTest | | prefer-string-slice |noSubstr | | prefer-string-trim-start-end |useTrimStartEnd | | require-number-to-fixed-digits-argument |useNumberToFixedDigitsArgument | | throw-new-error |useThrowNewError |
eslint-plugin-unused-imports
Section titled “eslint-plugin-unused-imports”| eslint-plugin-unused-imports Rules name | Biome Rules name | | ---- | ---- | | no-unused-imports |noUnusedImports | | no-unused-vars |noUnusedVariables |
eslint-plugin-vue
Section titled “eslint-plugin-vue”| eslint-plugin-vue Rules name | Biome Rules name | | ---- | ---- | | define-macros-order |useVueDefineMacrosOrder | | define-props-declaration |useVueConsistentDefinePropsDeclaration | | multi-word-component-names |useVueMultiWordComponentNames (inspired) | | next-tick-style |useVueNextTickPromise (inspired) | | no-arrow-functions-in-watch |noVueArrowFuncInWatch | | no-deprecated-data-object-declaration |noVueDataObjectDeclaration (inspired) | | no-dupe-keys |noVueDuplicateKeys | | no-import-compiler-macros |noVueImportCompilerMacros | | no-ref-as-operand |noVueRefAsOperand | | no-reserved-keys |noVueReservedKeys | | no-reserved-props |noVueReservedProps | | no-setup-props-reactivity-loss |noVueSetupPropsReactivityLoss (inspired) | | no-shared-component-data |noVueDataObjectDeclaration (inspired) |
typescript-eslint
Section titled “typescript-eslint”| typescript-eslint Rules name | Biome Rules name | | ---- | ---- | | adjacent-overload-signatures |useAdjacentOverloadSignatures | | array-type |useConsistentArrayType | | ban-ts-comment |noTsIgnore (inspired) | | ban-types |noBannedTypes | | consistent-type-definitions |useConsistentTypeDefinitions | | consistent-type-exports |useExportType (inspired) | | consistent-type-imports |useImportType (inspired) | | default-param-last |useDefaultParameterLast | | dot-notation |useLiteralKeys | | explicit-function-return-type |useExplicitReturnType (inspired) | | explicit-member-accessibility |useConsistentMemberAccessibility | | explicit-module-boundary-types |useExplicitType (inspired) | | max-params |useMaxParams | | method-signature-style |useConsistentMethodSignatures | | naming-convention |useNamingConvention (inspired) | | no-array-constructor |useArrayLiterals | | no-base-to-string |noBaseToString | | no-deprecated |noDeprecatedImports (inspired) | | no-dupe-class-members |noDuplicateClassMembers | | no-duplicate-enum-values |noDuplicateEnumValues | | no-empty-function |noEmptyBlockStatements | | no-empty-interface |noEmptyInterface (inspired) | | no-empty-object-type |noBannedTypes (inspired) | | no-explicit-any |noExplicitAny | | no-extra-non-null-assertion |noExtraNonNullAssertion | | no-extraneous-class |noStaticOnlyClass | | no-floating-promises |noFloatingPromises | | no-for-in-array |noForIn (inspired) | | no-implied-eval |noImpliedEval | | no-inferrable-types |noInferrableTypes | | no-invalid-void-type |noConfusingVoidType | | no-loop-func |noLoopFunc | | no-loss-of-precision |noPrecisionLoss | | no-magic-numbers |noMagicNumbers | | no-misused-new |noMisleadingInstantiator | | no-misused-promises |noMisusedPromises | | no-mixed-enums |useConsistentEnumValueType | | no-namespace |noNamespace | | no-non-null-asserted-optional-chain |noNonNullAssertedOptionalChain | | no-non-null-assertion |noNonNullAssertion | | no-redeclare |noRedeclare | | no-require-imports |noCommonJs | | no-restricted-imports |noRestrictedImports | | no-restricted-types |noRestrictedTypes | | no-shadow |noShadow | | no-this-alias |noUselessThisAlias (inspired) | | no-unnecessary-condition |noUnnecessaryConditions (inspired) | | no-unnecessary-template-expression |noUnnecessaryTemplateExpression (inspired) | | no-unnecessary-type-constraint |noUselessTypeConstraint | | no-unnecessary-type-conversion |noUselessTypeConversion | | no-unsafe-declaration-merging |noUnsafeDeclarationMerging | | no-unsafe-function-type |noBannedTypes (inspired) | | no-unused-vars |noUnusedVariables | | no-use-before-define |noInvalidUseBeforeDeclaration | | no-useless-constructor |noUselessConstructor | | no-useless-empty-export |noUselessEmptyExport | | no-var-requires |noCommonJs | | no-wrapper-object-types |noBannedTypes (inspired) | | only-throw-error |useThrowOnlyError (inspired) | | parameter-properties |noParameterProperties (inspired) | | prefer-as-const |useAsConstAssertion | | prefer-enum-initializers |useEnumInitializers | | prefer-find |useFind | | prefer-for-of |useForOf | | prefer-function-type |useShorthandFunctionType | | prefer-literal-enum-member |useLiteralEnumMembers | | prefer-namespace-keyword |useNamespaceKeyword | | prefer-nullish-coalescing |useNullishCoalescing (inspired) | | prefer-optional-chain |useOptionalChain | | prefer-readonly |useReadonlyClassProperties | | prefer-reduce-type-parameter |useReduceTypeParameter (inspired) | | prefer-regexp-exec |useRegexpExec | | prefer-string-starts-ends-with |useStringStartsEndsWith (inspired) | | require-array-sort-compare |useArraySortCompare | | require-await |useAwait | | restrict-plus-operands |noUnsafePlusOperands | | switch-exhaustiveness-check |useExhaustiveSwitchCases | | unified-signatures |useUnifiedTypeSignatures | | use-await-thenable |useAwaitThenable (inspired) |
Missing a rule? Help us by contributing to the analyzer or create a rule suggestion here.
Copyright (c) 2023-present Biome Developers and Contributors.