Skip to content

All Rules

This is a full table of all rules that will be implemented in the main Flint project. It includes rules from all three provided categories of plugins: Core, Focused, and Incubator.

Implemented: 521 of 1192 (43.7%)
Flint RulePluginPreset
accessKeysDisallow the use of the accessKey / accesskey attribute on JSX elements.JSXlogical
accessKeysAstrological
accessorPairGroupsReports getter and setter accessors for the same property that are not adjacent.TypeScriptstylistic
accessorPairTypesReports mismatched types between getter and setter accessor pairs.TypeScriptlogical
accessorThisRecursionReports recursive access to this within getters and setters.TypeScriptlogical (strict)
afterAllPaddingLinesEnforces padding around afterAll blocks.Viteststylistic (strict)
afterEachPaddingLinesEnforces padding around afterEach blocks.Viteststylistic (strict)
alertsReports uses of the global alert/confirm/prompt dialog APIs.Browserlogical
aliasMethodsViteststylistic
allPaddingLinesEnforces padding around Vitest blocks.Viteststylistic (strict)
altTextsReports elements that require alt text but are missing it.JSXlogical
altTextsAstrological
amdImportsTypeScript(none)
anchorAmbiguousTextReports anchor elements with ambiguous text that doesn't describe the link destination.JSXlogical (strict)
anchorAmbiguousTextAstrological
anchorContentReports anchor elements without accessible content.JSXlogical
anchorContentAstrological
anchorNativesNext.jslogical
anchorValidityReports invalid usage of anchor elements.JSXlogical
anchorValidityAstrological
anonymousDefaultExportsTypeScript(none)
anyArgumentsReports calling a function with a value typed as any as an argument.TypeScriptlogical
anyAssignmentsReports assigning a value with type any to variables and properties.TypeScriptlogical
anyCallsReports calling a value with type any.TypeScriptlogical
anyMemberAccessReports member access on a value with type any.TypeScriptlogical
anyReturnsReports returning a value with type any from a function.TypeScriptlogical
argumentsReports using the arguments object instead of rest parameters.TypeScriptlogical
ariaActiveDescendantTabIndexReports elements with aria-activedescendant without tabIndex.JSXlogical
ariaActiveDescendantTabIndexAstrological
ariaHiddenFocusablesReports elements with aria-hidden='true' that are focusable.JSXlogical (strict)
ariaHiddenFocusablesAstrological
ariaPropsReports invalid ARIA properties.JSXlogical
ariaPropsAstrological
ariaPropTypesReports ARIA properties with invalid value types.JSXlogical
ariaPropTypesAstrological
ariaRoleValidityReports invalid or abstract ARIA roles.JSXlogical
ariaRoleValidityAstrological
ariaUnsupportedElementsReports ARIA attributes on elements that don't support them.JSXlogical
ariaUnsupportedElementsAstrological
arrayCallbackReturnsReports missing return statements in callbacks of array methods.TypeScriptjavascript
arrayConstructorsReports using the Array constructor to create arrays instead of array literal syntax.TypeScriptlogical
arrayDeleteUnnecessaryCountsReports using .length or Infinity as the deleteCount or skipCount argument of Array#splice() or Array#toSpliced().TypeScriptstylistic
arrayElementDeletionsReports using the delete operator on array values.TypeScriptlogical
arrayEmptyCallbackSlotsReports array methods with callbacks that will never be invoked on arrays with empty slots.TypeScriptlogical
arrayExistenceChecksConsistencyReports inconsistent styles for checking element existence using index methods.TypeScriptstylistic
arrayFilteredFindsReports using .filter() when only the first or last matching element is needed.TypeScriptstylistic (strict)
arrayFindsReports using .filter()[0] instead of .find() when looking for a single element.TypeScriptstylistic
arrayFlatMapMethodsReports using .map().flat() when .flatMap() can be used.TypeScriptstylistic (strict)
arrayFlatMethodsReports legacy techniques to flatten arrays instead of using .flat().TypeScriptstylistic (strict)
arrayFlatUnnecessaryDepthsReports using 1 as the depth argument of .flat() since it is the default.TypeScriptstylistic
arrayHandlersSolidJS(none)
arrayIncludesReports using .indexOf() comparisons that can be replaced with .includes().TypeScriptstylistic
arrayIncludesMethodsReports using Array#some() with simple equality checks that can be replaced with .includes().TypeScriptstylistic (strict)
arrayIncludesOrderTypeScript(none)
arrayIndexKeyesReactlogical
arrayIndexOfMethodsReports using .findIndex() or .findLastIndex() with simple equality checks that can be replaced with .indexOf() or .lastIndexOf().TypeScriptstylistic (strict)
arrayInstanceOfChecksTypeScriptlogical
arrayLoopsReports using .forEach() when a for-of loop can be used.TypeScriptstylistic
arrayMapIdentitiesReports using .flatMap() with an identity function that returns its argument unchanged.TypeScriptlogical
arrayMutableReversesReports .reverse() calls on arrays that mutate the original array.TypeScriptstylistic
arrayMutableSortsReports .sort() calls on arrays that mutate the original array.TypeScriptstylistic
arrayPushCallsTypeScriptstylistic
arrayReduceTypeArgumentsReports Array#reduce calls using type assertions on initial values instead of type arguments.TypeScriptlogical (strict)
arraySliceUnnecessaryEndReports unnecessary end argument in .slice() calls when it equals the length or is Infinity.TypeScriptstylistic
arraySomeMethodsReports patterns that can be replaced with .some() for checking array element existence.TypeScriptstylistic (strict)
arraysOrderTypeScript(none)
arrayTernarySpreadingConsistencyReports inconsistent types when spreading a ternary in an array literal.TypeScriptstylistic
arrayTypesReports array type syntax that doesn't match the configured style.TypeScriptstylistic
arrayUnnecessaryLengthChecksReports unnecessary array length checks before .some() or .every() calls.TypeScriptlogical
asConstAssertionsReports using explicit literal types when as const can be used.TypeScriptstylistic
assertStrictPrefer strict assertion mode from Node.js for better error messages and behavior.Node.jslogical
assertStylesPrefer assert.ok() over assert() for explicit intent and better readability.Node.jsstylistic
assignmentOperatorShorthandsPrefer logical assignment operator shorthand expressions.TypeScriptstylistic
asyncFunctionAwaitsReports async functions that do not use await.TypeScriptlogical
asyncPromiseExecutorsReports using async functions as Promise executor functions.TypeScriptlogical
asyncUnnecessaryPromiseWrappersReports unnecessary Promise.resolve() or Promise.reject() in async contexts.TypeScriptlogical
atAccessesPrefer using .at() for accessing elements at negative indices.TypeScriptstylistic (strict)
atDebugTagsSveltelogical
atHtmlTagsSveltesecurity
attributeInheritanceDuplicatesVuelogical
attributeNameCasingVuestylistic
attributeOrdersVuestylistic (strict)
attributesOrderAstrosorting
attributeValidityJSXlogical
attributionEnforces that package.json declares author or contributor attribution.PackageJSONlogical
authorPresenceEnforces that the author property is present.PackageJSON(none)
authorValidityEnforces that the author property is valid.PackageJSONlogical
autocompleteEnsure the autocomplete attribute is correct and suitable for the form field.JSXlogical
autocompleteAstrological
autoFocusPropsReports autoFocus props that are not set to false.JSXlogical
autoFocusPropsAstrological
automaticJsoncRulesJSONconfig
awaitThenableTypeScriptlogical
bareUrlsReports bare URLs that should be formatted as autolinks or links.Markdownstylistic (strict)
beforeAllPaddingLinesEnforces padding around beforeAll blocks.Viteststylistic (strict)
beforeEachPaddingLinesEnforces padding around beforeEach blocks.Viteststylistic (strict)
beforeRouteEnterThisAccessesVuelogical
bindDirectiveValidityVuelogical
bindStylesVuestylistic
bindSyncValidityVuelogical
binNameCasingEnforce that names for bin properties are in kebab case.PackageJSONstylistic
binPresenceEnforces that the bin property is present.PackageJSON(none)
binValidityEnforces that the bin property is valid.PackageJSONlogical
blobReadingMethodsPrefer direct Blob reading methods over wrapping in Response for simpler code.Node.jsstylistic
blockLangSveltelogical (strict)
blockLanguagesVuelogical
blockLineLimitsVuestylistic
blockMappingsPrefer block-style mappings over flow-style mappings.YAMLstylistic
blockOrdersVuesorting
blockquoteBlankLineMultiplesMarkdownstylistic (strict)
blockSequencesPrefer block style sequences over flow style sequences.YAMLstylistic
booleanDefaultsVuelogical
booleanPropNamesJSXstylistic (strict)
booleanPropTypePositionsVuelogical
booleanValuesPrefer shorthand boolean attributes over explicit {true} values in JSX.JSXstylistic
bracedStatementsDisallow unnecessary JSX curly braces around literals and JSX elements.JSXstylistic
browserPresenceEnforces that the browser property is present.PackageJSON(none)
browserValidityEnforces that the browser property is valid.PackageJSONlogical
bufferAllocatorsPrefer modern Buffer allocation methods over the deprecated Buffer constructor.Node.jslogical
bugsPresenceEnforces that the bugs property is present.PackageJSON(none)
bugsValidityEnforces that the bugs property is valid.PackageJSON(none)
builtinCoercionsReports functions that wrap native coercion functions like String, Number, BigInt, Boolean, or Symbol.TypeScriptstylistic (strict)
builtinConstructorNewsEnforces using new for constructors that require it, and disallows new for primitive coercion functions.TypeScriptstylistic
bundleDependenciesPresenceEnforces that the bundleDependencies property is present.PackageJSON(none)
bundleDependenciesValidityEnforces that the bundleDependencies (also: bundledDependencies) property is valid.PackageJSONlogical
buttonTypesReports button elements without an explicit type attribute.JSXlogical
buttonTypesSveltelogical (strict)
buttonTypesVuelogical
calledOnceAssertionsVitest(none)
calledOnceWithAssertionsViteststylistic (strict)
calledTimesAssertionsViteststylistic (strict)
calledWithAssertionsViteststylistic (strict)
camelCaseNamesVuestylistic
caseDeclarationsReports lexical declarations in case clauses without wrapping them in blocks.TypeScriptjavascript
caseDuplicatesReports switch statements with duplicate case clause test expressions.TypeScriptlogical
caseFallthroughsReports switch case clauses that fall through unexpectedly.TypeScriptlogical
catchCallbackTypesReports Promise catch callback parameters that are not typed as unknown.TypeScriptlogical
caughtErrorCausesTypeScriptlogical (strict)
caughtVariableNamesEnforces a consistent naming convention for catch clause error variables.TypeScriptstylistic (strict)
chainedAssignmentsReports using chained assignment expressions (e.g., a = b = c).TypeScriptstylistic
characterClassElementsOrderTypeScript(none)
charAtComparisonsReports comparing charAt() results with strings longer than one character.TypeScriptlogical
childContentOverridesVuelogical
childrenPropsReports usage of the children prop.JSXstylistic
childrenWhitespaceJSXlogical (strict)
classAssignmentsReports reassigning class declarations.TypeScriptjavascript
classComponentStateDefinitionsReactstylistic (strict)
classComponentStateInitializationReactstylistic (strict)
classDirectivesSveltestylistic (strict)
classesOrderTypeScriptsorting
classFieldDeclarationsReports assigning literal values to this in constructors instead of using class field declarations.TypeScriptjavascript
classListDirectiveObjectsAstrostylistic
classListDirectivesAstrostylistic
classListDirectiveSplitsAstrostylistic
classListPropsSolidJS(none)
classListTogglesPrefer using classList.toggle() over conditional classList.add() and classList.remove().Browserstylistic
classLiteralPropertiesReports getters that return literal values instead of using readonly class fields.TypeScriptstylistic
classMemberDuplicatesReports duplicate class member names that will be overwritten.TypeScriptjavascript
classMethodsThisReports class methods that do not use this.TypeScriptstylistic (strict)
classMultipleObjectsVuestylistic
classNameDuplicatesVuestylistic
clickEventKeyEventsReports onClick without keyboard event handlers.JSXlogical
clickEventKeyEventsAstrological
clientComponentAsyncDefinitionsNext.jslogical
clientOnlyDirectiveValuesReports client:only directives without a value, or with a value whose type cannot be a renderer hint string.Astrological
cloakDirectiveValidityVuelogical
codeSpacesMarkdownstylistic
combinedPushesReports consecutive array.push() calls that could be combined into a single call.TypeScriptstylistic (strict)
commentDirectivesVuelogical
commentedOutTestsVitestlogical (strict)
commentTextNodesReports JSX text nodes that contain comment syntax but are rendered as text.JSXlogical
commonjsModulesTypeScript(none)
comparisonMatcherAssertionsViteststylistic
compilerMacroImportsVuelogical
compilerOptionsReactconfig
componentApiStylesVuestylistic
componentConditionalReturnsSolidJSlogical
componentDataSharingVuelogical
componentDefinitionsReactstylistic
componentDidMountSetStatesReactlogical (strict)
componentDidUpdateSetStatesReactlogical (strict)
componentDisplayNamesReactlogical (strict)
componentFileExportsAstrological
componentFileNameMatchesVuestylistic
componentHookFactoriesReactlogical
componentHtmlTextPropsVuelogical
componentImportNameMatchesVuestylistic
componentNameCasingVuestylistic
componentNamesVuestylistic
componentNameValidityVuelogical
componentNestingReactlogical
componentOptionNameCasingVuestylistic
componentOptionTyposVuelogical
componentPropertyOrderVuesorting
componentPropMutationsVuelogical
componentTemplateNameCasingVuestylistic
componentVIsBindsVuelogical
componentWillUpdateSetStatesReactlogical (strict)
computedAsyncPropertiesVuelogical
computedPropertyLikeMethodsVuelogical
computedPropertyReturnsVuelogical
computedPropertySideEffectsVuelogical
conditionalExpectsViteststylistic (strict)
configPresenceEnforces that the config property is present.PackageJSON(none)
configValidityEnforces that the config property is valid.PackageJSONlogical
consecutiveNonNullAssertionsReports unnecessary extra non-null assertions.TypeScriptstylistic
consoleCallsReports calls to console methods.TypeScript(none)
consoleCallsVuelogical
consoleSpacesDisallow leading or trailing spaces in console method string arguments.Node.jsstylistic (strict)
constantAssignmentsReports attempting to reassign variables declared with const.TypeScriptjavascript
constantConditionsVuelogical
constructorGenericCallsReports inconsistent placement of type arguments in constructor calls.TypeScriptstylistic
constructorReturnsReports returning values from constructor functions.TypeScriptjavascript
constructorSupersReports constructors of derived classes that do not call super(), and constructors of non-derived classes that call super().TypeScriptjavascript
constVariablesTypeScriptlogical
contextValueReferencesReactlogical (strict)
contributorsPresenceEnforces that the contributors property is present.PackageJSON(none)
contributorsValidityEnforces that the contributors property is valid.PackageJSONlogical
controlAssociatedLabelsAstrological
controlAssociatedLabelsJSXlogical
coreModuleHidingNode.js(none)
cpuPresenceEnforces that the cpu property is present.PackageJSON(none)
cpuValidityEnforces that the cpu property is valid.PackageJSONlogical
cspellRuns the CSpell spell checker on any source code file.Spellinglogical
cssManualStylesheetsNext.jslogical
customEventNameCasingVuestylistic
customFontsInPagesNext.jslogical
customModelModifiersVuelogical
dangerouslySetInnerHTMLWithChildrenReactlogical
dangerousPropsReactlogical (strict)
dataComputedPropertiesVuelogical
dateConstructorClonesPrefer passing a Date directly to the Date constructor when cloning, rather than calling getTime().TypeScriptlogical
dateNowTimestampsPrefer the shorter Date.now() to get the number of milliseconds since the Unix Epoch.TypeScriptlogical (strict)
debuggerStatementsReports using debugger statements.TypeScriptlogical
decoratorsOrderTypeScriptsorting
defaultCaseLastReports switch statements where the default clause is not last.TypeScriptlogical
defaultExportsTypeScript(none)
defaultExportsVuelogical
defaultParameterLastEnforce default parameters to be last.TypeScriptjavascript
defaultPropsMatchingPropTypesReactlogical
defaultPropsOrderJSXsorting
defaultPropTypesVuelogical
defineEmitsDeclarationsVuestylistic
defineEmitsValidityVuelogical
defineMacrosOrderVuesorting
defineOptionsMacrosVuestylistic
defineOptionsValidityVuelogical
definePropsDeclarationsVuestylistic
definePropsDestructuringVuestylistic
definePropsValidityVuelogical
definitionContentsReports definitions with empty URLs or only empty fragments.Markdownlogical
definitionDuplicatesReports duplicate definition identifiers (case-insensitive).Markdownlogical
definitionUsesReports unused reference definitions.Markdownlogical
deletesReports using the delete operator.Performancelogical
dependenciesPresenceEnforces that the dependencies property is present.PackageJSON(none)
dependenciesValidityEnforces that the dependencies property is valid.PackageJSONlogical
dependencyRangesPackageJSON(none)
dependencyUniquenessReports dependency names that are declared more than once in package.json.PackageJSONlogical
deprecatedDisallow using code marked as @deprecated.TypeScriptlogical
deprecatedDataObjectDeclarationsVuelogical
deprecatedDestroyedLifecycleHooksVuelogical
deprecatedFiltersVuelogical
deprecatedFunctionalTemplatesVuelogical
deprecatedImportsTypeScript(none)
deprecatedThisDefaultPropsVuelogical
describeCallbackValidityVitestlogical
describePaddingLinesEnforces padding around describe blocks.Viteststylistic (strict)
describeTitleReferencesViteststylistic
descriptionPresenceEnforces that the description property is present.PackageJSONlogical
descriptionValidityEnforces that the description property is valid.PackageJSONlogical
destructuringReactstylistic
destructuringConsistencyUse destructured variables over properties for consistency.TypeScriptstylistic (strict)
devDependenciesPresenceEnforces that the devDependencies property is present.PackageJSON(none)
devDependenciesValidityEnforces that the devDependencies property is valid.PackageJSONlogical
devEnginesPresenceEnforces that the devEngines property is present.PackageJSON(none)
devEnginesValidityEnforces that the devEngines property is valid.PackageJSONlogical
directExportsVuelogical
directivePairsTypeScriptlogical (strict)
directiveRequireDescriptionsTypeScriptstylistic (strict)
directoriesPresenceEnforces that the directories property is present.PackageJSON(none)
directoriesValidityEnforces that the directories property is valid.PackageJSONlogical
distractingElementsReports distracting elements like <marquee> and <blink>.JSXlogical
distractingElementsAstrological
documentCookiesReports uses of document.cookie which can be error-prone and has security implications.Browserlogical (strict)
documentDomainsReports uses of document.domain which relaxes same-origin protections.Browserlogical
documentWritesReports uses of document.write() and document.writeln() which block HTML parsing.Browserlogical
doneCallbacksVitest(none)
dotNotationVuestylistic
duplicateArgumentsReports functions with duplicate parameter names in their signatures.TypeScriptjavascript
duplicateAttributesVuelogical
duplicateElseIfBlocksSveltelogical
duplicateKeysJSONlogical
duplicateStylePropertiesSveltelogical
duplicateUseDirectivesSveltelogical
duplicateVElseIfConditionsVuelogical
dynamicDeletesDisallow using the delete operator on computed key expressions.TypeScriptlogical
dynamicImportChunkNamesTypeScript(none)
dynamicRequiresTypeScript(none)
eachBlockKeysSveltelogical
eachForConsistencyVitest(none)
eachLoopsViteststylistic
effectSetStatesReactlogical
elementChildrenValidityReports void DOM elements that have children, which is invalid HTML.JSXlogical (strict)
elseDirectivesWithForDirectivesVuelogical
elseDirectiveValidityVuelogical
elseIfDirectiveValidityVuelogical
elseIfDuplicatesReports duplicate conditions in if-else-if chains that make code unreachable.TypeScriptlogical
elseReturnsReports unnecessary else blocks following if statements that always return or throw.TypeScriptstylistic (strict)
emitsValidatorReturnsVuelogical
emitValidatorsVuelogical
emptyBlocksReports empty block statements that should contain code.TypeScriptstylistic
emptyComponentBlocksVuestylistic
emptyDestructuresReports using empty destructuring patterns that destructure no values.TypeScriptlogical
emptyDocumentsReports empty YAML documents that contain only document markers.YAMLlogical
emptyEnumsReports empty enum declarations with no members.TypeScriptlogical
emptyExportsReports empty export statements that don't make a file a module.TypeScriptlogical
emptyFieldsReports empty package.json fields that do not add package metadata.PackageJSONlogical
emptyFilesReports files that contain no meaningful code.TypeScriptstylistic (strict)
emptyFunctionsReports empty functions that should contain code or a comment.TypeScriptstylistic (strict)
emptyMappingKeysReports empty mapping keys.YAMLlogical
emptyMappingValuesReports empty mapping values.YAMLlogical
emptyModuleAttributesReports empty import/export attributes that serve no purpose.TypeScriptstylistic
emptyObjectTypesReports empty object type literals and empty interfaces that are often used incorrectly.TypeScriptlogical
emptyPatternsVuelogical
emptySequenceEntriesReports empty sequence entries.YAMLlogical
emptyStaticBlocksReports empty static initialization blocks within class declarations.TypeScriptstylistic
emptyTypeParameterListsReports empty type parameter lists in type aliases and interfaces.TypeScriptstylistic
endTagPresenceVuelogical
enginesPresenceEnforces that the engines property is present.PackageJSON(none)
enginesValidityEnforces that the engines property is valid.PackageJSONlogical
enumInitializersReports enum members without explicit initial values.TypeScript(none)
enumMemberLiteralsRequires all enum members to be literal values.TypeScriptlogical (strict)
enumMixedValuesTypeScriptlogical
enumsOrderTypeScript(none)
enumValueConsistencyReports enums that contain both string and number members.TypeScriptlogical
enumValueDuplicatesReports enum members with duplicate values.TypeScriptlogical
equalityMatchersViteststylistic
equalityOperatorNegationsReports negated expressions on the left side of equality checks.TypeScript(none)
equalityOperatorsEnforces consistent use of strict equality operators (=== and !==) over loose equality operators (== and !=) for non-nullish comparisons.TypeScriptlogical
errorBoundariesReactlogical
errorMessagesRequires a message value when creating a built-in error.TypeScriptlogical (strict)
errorSubclassPropertiesReports incorrect Error subclass definitions that don't follow best practices.TypeScriptlogical (strict)
errorUnnecessaryCaptureStackTracesReports unnecessary Error.captureStackTrace() calls in Error subclass constructors.TypeScriptlogical
escapeSequenceCasingReports escape sequences with lowercase hexadecimal characters.TypeScriptstylistic (strict)
evalsReports uses of the eval function.TypeScriptlogical
eventClassesPrefer EventTarget over EventEmitter for cross-platform compatibility.Node.jslogical (strict)
eventHandlerCasingSolidJSlogical
eventListenerSubscriptionsPrefer addEventListener over assigning to on* event handler properties.Browserlogical (strict)
eventPrefixesSveltestylistic (strict)
eventTriggerExplicitEmitsVuelogical
evolvingVariableTypesReports variables declared without type annotation or initializer.TypeScript(none)
exceptionAssignmentsReports reassigning exception parameters in catch clauses.TypeScriptlogical
exhaustiveDepsReactlogical
expectGroupPaddingLinesEnforces padding around expect groups.Viteststylistic (strict)
expectResolvesViteststylistic
expectsOutsideTestsVitestlogical (strict)
expectValidityVitestlogical
explicitAnysReports explicit uses of the any type.TypeScriptlogical
explicitSlotsVuelogical
exponentiationOperatorsPrefers the ** operator over Math.pow().TypeScriptstylistic
exportAttributesOrderTypeScript(none)
exportDeclarationsOrderTypeScript(none)
exportFromImportsReports imports that are re-exported and could use export...from syntax instead.TypeScriptstylistic
exportMutablesReports exporting mutable bindings (let or var).TypeScriptlogical
exportsAssignmentsPrevent assignment to the exports variable in CommonJS modules.Node.jslogical
exportsOrderTypeScriptsorting
exportsPresenceEnforces that the exports property is present.PackageJSONlogical
exportsSubpathsStyleEnforce consistent root exports subpath style in package.json.PackageJSONstylistic
exportsValidityEnforces that the exports property is valid.PackageJSONlogical
exportUniqueNamesReports duplicate export names in a module.TypeScriptjavascript
exposeAfterAwaitsVuelogical
exposeMacrosVuelogical
extraneousClassesReports classes used as static namespaces.TypeScriptlogicalStrict
falsyMatchersVitest(none)
fencedCodeLanguagesReports fenced code blocks without a language specified.Markdownstylistic (strict)
fencedCodeMetaMarkdownstylistic
fetchMethodBodiesDisallow providing a body with GET or HEAD fetch requests.TypeScriptlogical
fileExtensionsEnforces consistent YAML file extensions.YAMLstylistic (strict)
filenamesVitest(none)
filePathsFromImportMetaPrefer import.meta.dirname and import.meta.filename over legacy file path techniques.Node.jsstylistic (strict)
fileReadJSONBuffersPrefer reading JSON files as buffers when using JSON.parse for better performance.Node.jsstylistic (strict)
filesPresenceEnforces that the files property is present.PackageJSON(none)
filesRedundancyPackageJSONlogical
filesValidityEnforces that the files property is valid.PackageJSONlogical
finallyStatementSafetyReports control flow statements in finally blocks that can override control flow in try/catch blocks.TypeScriptlogical
floatingPromisesTypeScriptlogical
forBindKeysVuelogical
forDelimiterStylesVuestylistic
forDirectionsReports for loops with counter variables that move in the wrong direction.TypeScriptstylistic
forDirectiveValidityVuelogical
forInArraysReports iterating over an array with a for-in loop.TypeScriptlogical
forInGuardsReports for-in loops without an if statement to filter inherited properties.TypeScript(none)
forMapsSolidJSlogical
fragmentElementsJSXstylistic
functionApplySpreadsPrefer the spread operator over .apply() calls.TypeScriptstylistic
functionAssignmentsReports reassigning variables declared with function declarations.TypeScriptjavascript
functionComponentDefinitionsReactstylistic
functionComponentThisReferencesReactjavascript
functionCurryingRedundancyReports using .apply() or .call() or when the context (this value) provides no benefit.TypeScriptlogical
functionDeclarationStylesReports functions that don't match the configured style (declaration vs expression).TypeScript(none)
functionDefinitionScopeConsistencyTypeScriptstylistic (strict)
functionNameMatchesReports function names that don't match the variable or property they're assigned to.TypeScript(none)
functionNewCallsReports using the Function constructor to create functions from strings.TypeScriptlogical
functionTypeDeclarationsTypeScriptstylistic
fundingPresenceEnforces that the funding property is present.PackageJSON(none)
fundingValidityEnforces that the funding property is valid.PackageJSONlogical
gatingReactconfig
generatorFunctionYieldsReports generator functions that do not yield values.TypeScriptlogical
getterReturnsReports getter functions that do not return values.TypeScriptjavascript
globalAssignmentsReports attempting to assign to read-only global variables such as undefined, NaN, Infinity, Object, etc.TypeScriptjavascript
globalCryptoNode.js(none)
globalMutationsReactlogical
globalObjectCallsReports calling global objects like Math, JSON, or Reflect as functions.TypeScriptjavascript
globalThisAliasesReports using window, self, or global instead of globalThis.TypeScriptstylistic (strict)
globalTimersNode.js(none)
googleAnalyticsInlineScriptNext.jslogical
googleFontDisplayNext.jslogical
googleFontPreconnectNext.jslogical
gypfilePresenceEnforces that the gypfile property is present.PackageJSON(none)
gypfileValidityEnforces that the gypfile property is valid.PackageJSONlogical
hashbangsNode.jslogical
headDuplicatesNext.jslogical
headImportsInDocumentsNext.jslogical
headingContentsReports heading elements without accessible content.JSXlogical
headingContentsAstrological
headingDuplicatesMarkdownstylistic (strict)
headingEmphasisEquivalentsMarkdownstylistic (strict)
headingIncrementsReports heading levels incrementing by more than one.Markdownlogical
headingRootDuplicatesReports multiple H1 headings in the same document.Markdownlogical (strict)
headingRootPresenceMarkdownlogical (strict)
headingTrailingPunctuationMarkdownstylistic (strict)
headNativesNext.jslogical
heritageClausesOrderTypeScriptsorting
hexColorValidityReports hex colors with invalid values.CSSlogical
hoistedApiPositionsVitestlogical (strict)
homepagePresenceEnforces that the homepage property is present.PackageJSONlogical
homepageValidityEnforces that the homepage property is valid.PackageJSONlogical
hookDuplicatesVitestlogical (strict)
hookOrdersViteststylistic (strict)
hooksBeforeTestCasesViteststylistic (strict)
htmlCommentSpacingSveltestylistic (strict)
htmlDirectiveValidityVuelogical
htmlLangsReports <html> elements without a lang prop.JSXlogical
htmlLangsAstrological
ifDirectiveValidityVuelogical
ifElseKeysVuelogical
iframeSandboxesJSXlogical (strict)
iframeTitlesReports <iframe> elements without a title prop.JSXlogical
iframeTitlesAstrological
imageAltRedundancyAstrological
imageAltTextsReports images without alternative text.Markdownlogical
imageContentsReports images with empty URLs or only empty fragments.Markdownlogical
imgNativesNext.jslogical
immediateMutationsTypeScriptstylistic
immutabilityReactlogical
implicitCoercionsVuestylistic
implicitGlobalsPrevents implicit global variable declarations in browser scripts.Browserlogical
impliedEvalsReports using string arguments in setTimeout, setInterval, setImmediate, execScript, or the Function constructor.TypeScriptlogical
importAssignmentsTypeScriptjavascript
importAttributesOrderTypeScript(none)
importCyclesTypeScriptstylistic
importDeclarationsFirstTypeScript(none)
importDeclarationsOrderTypeScript(none)
importDuplicatesTypeScriptlogical
importedNamespaceDynamicAccessesDisallow computed member access on imported namespace identifiers.Performancelogical
importEmptyBlocksReports empty named import blocks.TypeScriptlogical
importExtensionsTypeScript(none)
importExtraneousDependenciesTypeScriptnone
importFileExtensionsNode.js(none)
importMetaPropertiesNuxtstylistic
importSelfTypeScriptlogical
importsInMocksVitest(none)
importsOrderTypeScript(none)
importSpecifiersOrderTypeScript(none)
importTypeSideEffectsReports imports that use inline type qualifiers on all specifiers when a top-level type qualifier should be used instead.TypeScriptlogical
importUnnecessaryPathSegmentsTypeScriptstylistic
incompatibleLibrariesReactlogical
indexedObjectTypesReports indexed object types that don't match the configured style.TypeScriptstylistic
infiniteReactivityLoopsSveltelogical
inlineScriptIdNext.jslogical
inlineStylesSveltelogical (strict)
innerHTMLPropsSolidJSlogical (strict)
inputCheckedMutabilityJSXlogical
inspectRunesSveltelogical
instanceOfArraysReports using instanceof Array instead of Array.isArray().TypeScriptlogical
interactiveElementRolesReports interactive elements with non-interactive ARIA roles.JSXlogical
interactiveElementRolesAstrological
interactiveElementsFocusableReports interactive elements that are not focusable via keyboard.JSXlogical
interactiveElementsFocusableAstrological
interfacesOrderTypeScriptsorting
internalModulesTypeScript(none)
intersectionTypesOrderTypeScriptsorting
invalidCodeLinesReports cases for invalid code that isn't formatted across lines.Flintlogical
invalidThisTypeScriptjavascript
invalidVoidTypesTypeScriptlogical (strict)
irregularWhitespaceYAMLstylistic
irregularWhitespacesReports irregular whitespace characters that can cause issues with code parsing and display.TypeScriptlogical
isDirectiveValidityVuelogical
isNaNComparisonsReports comparisons with NaN, which should use Number.isNaN() instead.TypeScriptlogical
isolatedFunctionsTypeScriptlogical
iterableKeysReactlogical (strict)
jsdocAccessTagsTypeScriptstylistic
jsdocAnyTypesTypeScriptlogical
jsdocAsterisksTypeScriptstylistic (strict)
jsdocEmptyBlocksTypeScriptstylistic
jsdocEmptyTagsTypeScriptstylistic
jsdocExampleCodeValidityTypeScriptlogical
jsdocFunctionTypesTypeScriptlogical
jsdocImplementsTagsTypeScriptstylistic
jsdocImportTagsTypeScriptstylistic
jsdocInformativeDocsTypeScriptstylistic (strict)
jsdocInlineTagEscapesTypeScriptstylistic
jsdocMisleadingBlocksTypeScriptstylistic (strict)
jsdocMultilineBlocksTypeScriptstylistic (strict)
jsdocNextDescriptionsTypeScriptstylistic
jsdocNextTypesTypeScriptlogical
jsdocParameterDescriptionHyphensTypeScriptstylistic (strict)
jsdocParameterNamePresenceTypeScriptstylistic
jsdocParameterNamesTypeScriptstylistic
jsdocPropertyNamePresenceTypeScriptstylistic
jsdocPropertyNamesTypeScriptstylistic
jsdocRedundantTypesTypeScriptstylistic
jsdocRejectsTypeScriptstylistic
jsdocRequiredTagsTypeScriptstylistic
jsdocTagNamesTypeScriptstylistic (strict)
jsdocTagsOrderTypeScriptsorting
jsdocTemplateDescriptionsTypeScriptstylistic
jsdocTemplateNamesTypeScriptstylistic
jsdocThrowDescriptionsTypeScriptstylistic
jsdocThrowTypesTypeScriptlogical
jsdocTypeChecksTypeScriptlogical
jsdocTypeScriptEmptyObjectTypesTypeScriptlogical
jsdocTypeScriptFunctionTypesTypeScriptstylistic
jsdocTypeScriptMethodSignatureStylesTypeScriptstylistic
jsdocTypeScriptUnnecessaryTemplateExpressionsTypeScriptstylistic
jsdocTypesSyntaxTypeScriptstylistic
jsdocUnnecessaryReturnsTypeScriptstylistic
jsdocUnnecessaryYieldsTypeScriptstylistic
jsdocValidTypesTypeScriptstylistic
jsdocValuesTypeScriptstylistic
jsdocYieldDescriptionsTypeScriptstylistic
jsdocYieldsTypeScriptstylistic
jsdocYieldTypesTypeScriptlogical
jsonKeysOrderJSONsorting
jsxVariableUsesVuelogical
keyboardEventKeysPrefer KeyboardEvent.key over deprecated properties like keyCode, charCode, and which.Browserlogical
keyDuplicatesReports unnecessary duplicate keys that override previous values.JSONlogical
keyDuplicatesVuelogical
keyNormalizationReports object keys that are not normalized using Unicode normalization forms.JSONlogical
keysOrderVuesorting
keyValidityVuelogical
keywordsPresenceEnforces that the keywords property is present.PackageJSON(none)
keywordsValidityEnforces that the keywords property is valid.PackageJSONlogical
kitPagePropNamesSveltelogical
labelAssociatedControlsReports <label> elements without an associated control element.JSXlogical
labelAssociatedControlsAstrological
labelReferencesReports missing label references.Markdownlogical
labelReferenceValidityReports invalid label references with whitespace.Markdownlogical
langValidityReports invalid lang attribute values.JSXlogical (strict)
langValidityAstrological
legacyOctalLiteralsJSONlogical
libcPresenceEnforces that the libc property is present.PackageJSON(none)
libcValidityEnforces that the libc property is valid.PackageJSONlogical
licensePresenceEnforces that the license property is present.PackageJSONlogical
licenseValidityEnforces that the license property is valid.PackageJSONlogical
lifecyclesAfterAwaitsVuelogical
linkContentsReports links with empty URLs or only empty fragments.Markdownlogical
linkDescriptionsMarkdownlogical (strict)
linkFragmentsReports link fragments that don't exist in the document.Markdownlogical
literalConstructorWrappersPrefers literal syntax over constructor function calls for primitive values.TypeScriptstylistic
loneTemplatesVuelogical (strict)
loopAwaitsReports using await expressions inside loops.Performancelogical
loopFunctionsReports function declarations and expressions inside loops that reference variables modified by the loop.Performancelogical
macroVariableNamesVuestylistic
mainPresenceEnforces that the main property is present.PackageJSON(none)
mainValidityEnforces that the main property is valid.PackageJSONlogical
manPresenceEnforces that the man property is present.PackageJSON(none)
manualDomManipulationsSveltelogical
manualEventListenersSveltelogical (strict)
manualMemoizationPreservationsReactlogical
manValidityEnforces that the man property is valid.PackageJSONlogical
mapsOrderTypeScriptsorting
mathMethodsPrefer modern Math methods over legacy patterns.TypeScriptstylistic (strict)
meaninglessVoidOperatorsReports using the void operator on expressions that are already void or undefined.TypeScriptlogical
mediaCaptionsReports media elements without captions.JSXlogical
mediaCaptionsAstrological
mediaSyntaxReversalsReports reversed link and image syntax in Markdown.Markdownstylistic
memoDirectiveValidityVuelogical
messagePhrasesFlintlogical (strict)
methodSignatureStylesTypeScriptstylistic
misleadingVoidExpressionsRequire expressions of type void to appear in statement position.TypeScriptlogical
missingPlaceholdersReports context.report() calls missing data for message placeholders.Flintlogical
misusedPromisesTypeScriptlogical
mockedFunctionInstancesViteststylistic (strict)
mockTypeParametersViteststylistic (strict)
modelDefinitionValidityVuelogical
modelDirectiveArgumentsVuelogical
modelDirectivesVuestylistic
modelDirectiveValidityVuelogical
moduleAssignmentsNext.jsjavascript
moduleExportImportsTypeScript(none)
modulePresenceEnforces that the module property is present.PackageJSON(none)
modulesOrderTypeScriptsorting
moduleSpecifierListsRequire non-empty specifier lists in import and export statements.TypeScriptlogical
moduleSyntaxDeclarationsTypeScript(none)
moduleValidityEnforces that the module property is valid.PackageJSONlogical
mouseEventKeyEventsReports mouse events without corresponding keyboard events.JSXlogical
mouseEventKeyEventsAstrological
multilineAmbiguitiesReports ambiguous multiline expressions that could be misinterpreted.TypeScriptstylistic
multilineStringsJSONlogical
multipleEmptyLinesYAML(none)
mustacheObjectsSveltelogical
namedDefaultExportsReports anonymous functions and classes as the default export.TypeScriptstylistic (strict)
namedDefaultImportsTypeScript(none)
namedDefaultMembersTypeScript(none)
namedDefaultSpecifiersTypeScript(none)
namedExportsTypeScript(none)
namePresenceEnforces that the name property is present.PackageJSONlogical
namePropertiesVuestylistic
namespaceDeclarationsReports using legacy namespace declarations.TypeScriptlogical
namespaceImplicitAmbientImportsReports declared namespaces that implicitly export all members.TypeScriptstylistic (strict)
namespaceKeywordsReports using module keyword instead of namespace for TypeScript namespaces.TypeScriptstylistic
namespaceValiditySolidJSjavascript
nameValidityEnforces that the name property is valid.PackageJSONlogical
nativeObjectExtensionsReports extending the prototype of native JavaScript objects.TypeScriptjavascript
nativePromisesTypeScript(none)
negatedConditionsVuestylistic
negatedIfConditionsVuestylistic
negativeIndexLengthMethodsPrefer negative index over .length - index for at, slice, splice, and similar methods.TypeScriptstylistic (strict)
negativeZeroComparisonsReports comparisons with -0 that may not behave as expected.TypeScriptlogical
nestedStandaloneIfsReports if statements that are the only statement inside an else block or inside another if without an else.TypeScriptstylistic
newDefinitionsReports misleading constructor and new definitions in interfaces and classes.TypeScriptlogical
newExpressionsReports standalone new expressions that don't use the constructed object.TypeScriptlogical
newNativeNonConstructorsDisallows using new with global non-constructor functions like Symbol and BigInt.TypeScriptjavascript
nextDocumentOutsidePageNext.jslogical
nextScriptInHeadsNext.jslogical
nextScriptInteractiveOutsideDocumentNext.jslogical
nextTickStylesVuestylistic
nextTickValidityVuelogical
nodeAppendMethodsPrefer modern DOM append/prepend methods over appendChild/insertBefore.Browserlogical (strict)
nodeBuiltinImportsTypeScript(none)
nodeDatasetAttributesPrefer using element.dataset over getAttribute/setAttribute for data-* attributes.Browserlogical (strict)
nodeModificationMethodsPrefer modern DOM APIs like .replaceWith() and .before() over legacy methods like .replaceChild() and .insertBefore().Browserlogical (strict)
nodePropertyInChecksDisallows using the in operator to check properties on TypeScript nodes.Flintlogical
nodeProtocolsPrefer the node: protocol prefix for Node.js built-in modules for clarity and consistency.Node.jslogical
nodeQueryMethodsPrefer modern querySelector and querySelectorAll over legacy DOM query methods.Browserstylistic (strict)
nodeRemoveMethodsPrefer the modern node.remove() method over the legacy parentNode.removeChild(node) API.Browserlogical (strict)
nodeTestImportsReports importing from node:test.Vitestlogical
nodeTextContentsPrefer textContent over innerText for DOM nodes.Browserlogical (strict)
nonInteractiveElementInteractionsReports non-interactive elements with interactive event handlers.JSXlogical
nonInteractiveElementInteractionsAstrological
nonInteractiveElementRolesReports non-interactive elements with interactive ARIA roles.JSXlogical
nonInteractiveElementRolesAstrological
nonInteractiveElementTabIndexesReports non-interactive elements with positive or zero tabIndex values.JSXlogical
nonInteractiveElementTabIndexesAstrological
nonNullableTypeAssertionsReports type assertions that can be replaced with non-null assertions.TypeScriptstylistic
nonNullAssertedNullishCoalescesReports non-null assertions on the left side of nullish coalescing operators.TypeScriptlogical (strict)
nonNullAssertedOptionalChainsReports non-null assertions on optional chain expressions.TypeScriptlogical
nonNullAssertionPlacementReports confusing placement of non-null assertions next to comparison or assignment operators.TypeScriptstylistic (strict)
nonNullAssertionsTypeScriptlogical (strict)
nonOctalDecimalEscapesReports non-octal decimal escape sequences (\8 and \9) in string literals.TypeScriptlogical
nullishCheckStyleEnforces consistent equality operator usage when comparing with null or undefined.TypeScript(none)
nullishCoalescingOperatorsPrefer nullish coalescing operator (??) over logical OR (||) for nullish values.TypeScriptstylistic
numberMethodRangesReports when number method arguments are outside their valid range.TypeScriptlogical
numberStaticMethodsReports using legacy global functions instead of Number static methods.TypeScriptlogical (strict)
numericErasingOperationsReports operations that always result in zero, such as multiplication by zero.TypeScriptlogical
numericLiteralParsingReports parseInt calls with binary, hexadecimal, or octal strings that can be replaced with numeric literals.TypeScriptstylistic
numericPrecisionReports numeric literals that lose precision when converted to JavaScript numbers.TypeScriptlogical
numericSeparatorGroupsReports numeric literals with inconsistent separator grouping.TypeScriptstylistic (strict)
numericTrailingZerosReports trailing zeros in numeric values.YAMLstylistic (strict)
nuxtConfigKeysOrderNuxtsorting
nuxtConfigTestKeysNuxtlogical
objectAssignSpreadsPrefer object spread syntax over Object.assign() when the first argument is an object literal.TypeScriptstylistic
objectCallsPrefer {} object literal notation or Object.create instead of calling or constructing Object.TypeScriptlogical
objectEntriesMethodsPrefer Object.fromEntries() over reduce patterns that build objects from key-value pairs.TypeScriptstylistic (strict)
objectHasOwnsPrefer Object.hasOwn() over Object.prototype.hasOwnProperty.call() for checking own properties.TypeScriptstylistic
objectKeyDuplicatesReports unnecessary duplicate keys that override previous values.TypeScriptjavascript
objectProtoReports using the deprecated proto property to access or modify an object's prototype.TypeScriptjavascript
objectPrototypeBuiltInsReports direct calls to Object.prototype methods on object instances.TypeScriptlogical
objectShorthandObject property and method definitions can use shorthand syntax when the key matches the value identifier or when a function expression is assigned.TypeScriptstylistic
objectShorthandsVuestylistic
objectsOrderTypeScriptsorting
objectSpreadUnnecessaryFallbacksReports empty object fallbacks in object spread expressions that have no effect.TypeScriptlogical
objectTypeDefinitionsPrefer interface declarations over type aliases for object types.TypeScriptstylistic
objectTypesOrderTypeScriptsorting
octalEscapesReports using octal escape sequences in string literals.TypeScriptjavascript
octalNumbersReports using legacy octal numeric literals.TypeScriptjavascript
olPrefixesMarkdownstylistic (strict)
onceDirectiveValidityVuelogical
onDirectiveValidityVuelogical
onEventHyphensVuestylistic
onEventStylesVuestylistic
onExactModifiersVuelogical
onHandlerStylesVuestylistic
operatorAssignmentShorthandPrefer assignment operator shorthand where possible.TypeScriptstylistic
optimizedStyleAttributesSveltelogical (strict)
optionalChainOperatorsTypeScriptstylistic
optionalDependenciesPresenceEnforces that the optionalDependencies property is present.PackageJSON(none)
optionalDependenciesValidityEnforces that the optionalDependencies property is valid.PackageJSONlogical
optionalPropDefaultsVuelogical
osPresenceEnforces that the os property is present.PackageJSON(none)
osValidityEnforces that the os property is valid.PackageJSONlogical
overloadSignaturesAdjacentRequire that function overload signatures be consecutive.TypeScriptstylistic
packageCollectionsOrderPackageJSONsorting
packageManagerPresenceEnforces that the packageManager property is present.PackageJSON(none)
packageManagerValidityEnforces that the packageManager property is valid.PackageJSONlogical
pageLoadersSveltelogical
pageMetaRuntimeValuesNuxtlogical
parameterPropertyAssignmentTypeScriptlogical
parameterReassignmentsDisallow reassignment of function parameters.TypeScriptlogical
parentRelativeImportsTypeScript(none)
parseIntRadixesReports parseInt calls that are missing or have an invalid radix parameter.TypeScriptlogical
peerDependenciesInstallationEnforces that peer dependencies are installed through devDependencies.PackageJSONlogical
peerDependenciesMetaPresenceEnforces that the peerDependenciesMeta property is present.PackageJSON(none)
peerDependenciesMetaRelationshipEnforces that any dependencies declared in peerDependenciesMeta are also defined in the package's peerDependencies.PackageJSONlogical
peerDependenciesMetaValidityEnforces that the peerDependenciesMeta property is valid.PackageJSONlogical
peerDependenciesPresenceEnforces that the peerDependencies property is present.PackageJSON(none)
peerDependenciesValidityEnforces that the peerDependencies property is valid.PackageJSONlogical
plainScalarsPrefer plain style scalars over quoted scalars.YAMLstylistic (strict)
pluginRuleOrderingReports Flint plugin rules arrays that are not sorted alphabetically.Flintstylistic (strict)
plusOperandsTypeScriptlogical
polyfillDuplicatesNext.jslogical
precisionLossVuelogical
preDirectiveValidityVuelogical
prerenderExportsOutsidePagesAstrological
privatePackagePropertiesReports package.json properties that do not apply to private packages.PackageJSON(none)
privatePresenceEnforces that the private property is present.PackageJSON(none)
privateValidityEnforces that the private property is valid.PackageJSONlogical
processExitsPrevent direct use of process.exit() for better error handling and testing.Node.jslogical
promiseCallbackCreationsTypeScript(none)
promiseCatchReturnsTypeScript(none)
promiseFunctionAsyncTypeScriptstylistic
promiseMethodSingleArrayArgumentsTypeScriptlogical
promiseMultipleResolutionsTypeScript(none)
promiseParameterValidityTypeScript(none)
promiseRejectErrorsTypeScriptlogical
promiseReturnsTypeScript(none)
promiseReturnWrappersTypeScript(none)
promiseSettleAssertionsViteststylistic
promiseSpecMethodsTypeScript(none)
promiseStaticConstructorsTypeScript(none)
propCommentsVuestylistic
propDestructuresSolidJSlogical
propDuplicatesDisallow duplicate props in JSX elements.JSXlogical
propertyAccessNotationReports bracket notation property access when dot notation can be used.TypeScriptstylistic
propertyOrderPackageJSONsorting
propertyValidityReactjavascript
propLimitsVuestylistic
propNameCasingVuestylistic
propNameValidityVuelogical
propRequiredAndDefaultsVuelogical (strict)
propsOrderJSXsorting
propTypeConstructorsVuelogical
propTypesReactjavascript
propTypesVuelogical
publishConfigPresenceEnforces that the publishConfig property is present.PackageJSON(none)
publishConfigRedundancyReports publishConfig.access fields that do not affect unscoped packages.PackageJSONlogical
publishConfigValidityEnforces that the publishConfig property is valid.PackageJSONlogical
pureComponentShouldUpdateDefinitionsJSXlogical (strict)
purityReactlogical
quotesYAML(none)
reactiveReassignmentsSveltelogical
reactivitySolidJSlogical
reactLikeDepsSolidJSjavascript
reactLikePropsSolidJSjavascript
recursionOnlyArgumentsReports function parameters that are only used in recursive calls.TypeScriptlogical
redundantTypeConstituentsReports union and intersection type constituents that are redundant or override other types.TypeScriptlogical
referenceLikeUrlsReports resource links/images with URLs that match definition identifiers.Markdownlogical
refObjectReactivityLossVuelogical
refOperandsVuelogical
refsReactlogical
refStringsReactlogical
regexAllGlobalFlagsReports matchAll() and replaceAll() calls with regex arguments missing the global flag.TypeScriptlogical
regexAmbiguousInvalidityReports regex patterns that use ambiguous or invalid syntax from Annex B.TypeScriptlogical
regexCharacterClassesReports regex alternations that can be simplified to character classes.TypeScriptstylistic (strict)
regexCharacterClassRangesReports character class elements that can be simplified to ranges.TypeScriptstylistic
regexCharacterClassSetOperationsReports lookarounds that can be replaced with character class set operations.TypeScriptstylistic
regexConciseCharacterClassNegationsReports negated character classes that can use shorthand escapes.TypeScriptstylistic
regexContradictoryAssertionsReports elements in regular expressions that contradict assertions.TypeScriptlogical
regexControlCharacterEscapesReports control characters that are not escaped using standard escape sequences.TypeScriptlogical
regexControlCharactersReports control characters in regular expressions.TypeScriptlogical
regexDigitMatchersReports character classes with multiple adjacent characters that could use a range instead.TypeScriptstylistic (strict)
regexDollarEscapesReports replacement strings with unescaped $ that should use $$.TypeScriptstylistic
regexDuplicateCharacterClassCharactersReports duplicate characters in regular expression character classes.TypeScriptlogical
regexDuplicateDisjunctionsTypeScriptlogical
regexEmptyAlternativesReports empty alternatives in regular expressions that may indicate a mistake.TypeScriptlogical
regexEmptyCapturingGroupsReports capturing groups that only capture empty strings.TypeScriptlogical
regexEmptyCharacterClassesReports character classes that match no characters.TypeScriptlogical
regexEmptyGroupsReports empty groups in regular expressions.TypeScriptlogical
regexEmptyLazyQuantifiersReports lazy quantifiers at the end of regular expressions.TypeScriptlogical
regexEmptyLookaroundsAssertionsReports empty lookahead and lookbehind assertions in regular expressions.TypeScriptlogical
regexEmptyStringLiteralsReports empty string literals in character classes.TypeScriptlogical
regexEscapeBackspacesReports escape backspace ([\b]) in character classes.TypeScriptstylistic
regexExecutorsReports String.prototype.match calls that can be replaced with RegExp.prototype.exec.TypeScriptstylistic (strict)
regexFlagsOrderTypeScriptsorting
regexGraphemeStringLiteralsReports string literals inside character classes with the v flag that contain multiple graphemes.TypeScriptstylistic (strict)
regexHexadecimalEscapesReports regex character escapes that can be expressed more consistently using hexadecimal escapes.TypeScriptstylistic (strict)
regexIgnoreCaseFlagsReports regex patterns that can be simplified by using the i (ignore case) flag.TypeScriptlogical
regexInvisibleCharactersReports invisible characters in regex patterns that should use escape sequences instead.TypeScriptlogical
regexLetterCasingReports inconsistent letter casing in regex sequences.TypeScriptstylistic (strict)
regexListsOrderTypeScriptsorting
regexLiteralsUse a regular expression literal when the pattern is static.TypeScriptlogical
regexLiteralsJSONlogical
regexLookaroundAssertionsReports capturing groups at pattern boundaries that can be replaced with lookaround assertions.TypeScriptstylistic (strict)
regexLookaroundQuantifierOptimizationsReports non-constant quantifiers in lookaround assertions that could be simplified.TypeScriptlogical
regexMatchNotationReports inconsistent notations for matching any character in regular expressions.TypeScriptstylistic (strict)
regexMisleadingCapturingGroupsReports capturing groups that capture less text than their pattern suggests.TypeScriptlogical
regexMisleadingQuantifiersReports quantifiers whose minimum implies they must match but whose element can match empty.TypeScriptlogical
regexMisleadingUnicodeCharactersReports characters in regex character classes that appear as single visual characters but are made of multiple code points.TypeScriptlogical
regexNamedBackreferencesReports backreferences that do not use the name of their referenced capturing group.TypeScriptstylistic (strict)
regexNamedCaptureGroupsReports capturing groups in regular expressions that do not have a name.TypeScript(none)
regexNamedReplacementsReports indexed references in replacement strings that should use named references.TypeScriptstylistic (strict)
regexNonStandardFlagsReports non-standard regular expression flags.TypeScriptlogical
regexObscureRangesReports obscure character ranges in regular expressions.TypeScriptlogical
regexOctalEscapesReports octal escape sequences in regular expressions.TypeScriptlogical
regexPlusQuantifiersReports quantifiers {1,} in regular expressions that should use + instead.TypeScriptstylistic (strict)
regexPredefinedAssertionsReports regex lookarounds that can be replaced with predefined assertions.TypeScriptstylistic
regexQuantifierOptimizationsTypeScriptlogical
regexQuestionQuantifiersReports quantifiers {0,1} in regular expressions that should use ? instead.TypeScriptstylistic (strict)
regexRepeatQuantifiersReports consecutive identical elements in regular expressions that should use quantifiers.TypeScriptstylistic
regexResultArrayGroupsReports indexed access on regex result arrays when named capturing groups should be used.TypeScriptstylistic (strict)
regexSetOperationOptimizationsReports set operations in regular expressions that can be simplified.TypeScriptlogical
regexStandaloneBackslashesReports standalone backslashes in regex patterns that look like incomplete escape sequences.TypeScriptlogical
regexStarQuantifiersReports quantifiers {0,} in regular expressions that should use * instead.TypeScriptstylistic (strict)
regexSuperLinearBacktrackingReports regular expressions with exponential or polynomial backtracking.TypeScriptlogical
regexSuperLinearMovesReports quantifiers that can cause quadratic regex matching time.TypeScriptlogical
regexTestMethodsReports match() and exec() calls that should use RegExp.prototype.test() for boolean checks.TypeScriptstylistic
regexUnicodeCodepointEscapesReports surrogate pair escapes in regular expressions that can be replaced with Unicode codepoint escapes.TypeScriptstylistic (strict)
regexUnicodeEscapesEnforces consistent Unicode escape style in regex patterns by preferring codepoint escapes.TypeScript(none)
regexUnicodeFlagRequire regex patterns to have the unicode ('u') or unicodeSets ('v') flag for proper Unicode character handling.TypeScript(none)
regexUnicodePropertiesReports inconsistent Unicode property names in regular expressions.TypeScriptstylistic
regexUnnecessaryAssertionsReports assertions in regular expressions that always reject.TypeScriptlogical
regexUnnecessaryBackreferencesReports backreferences in regular expressions that will always match empty or fail.TypeScriptlogical
regexUnnecessaryCharacterClassesReports character classes that wrap a single element that does not require brackets.TypeScriptlogical
regexUnnecessaryCharacterRangesReports character class ranges that span only one or two characters.TypeScriptlogical
regexUnnecessaryDisjunctionsReports single-character alternatives in string disjunctions.TypeScriptlogical
regexUnnecessaryDollarReplacementsReports replacement string references to capturing groups that do not exist in the pattern.TypeScriptlogical
regexUnnecessaryEscapesReports unnecessary escape sequences in regular expressions.TypeScriptstylistic
regexUnnecessaryLookaroundAssertionsReports unnecessary nested lookaround assertions in regular expressions.TypeScriptlogical
regexUnnecessaryNestedAssertionsReports trivially nested assertions in regular expressions that can be simplified.TypeScriptlogical
regexUnnecessaryNestedQuantifiersReports trivially nested quantifiers in regular expressions that can be simplified.TypeScriptlogical
regexUnnecessaryNonCapturingGroupsReports non-capturing groups that can be removed without changing the meaning of the regex.TypeScriptstylistic (strict)
regexUnnecessaryNumericQuantifiersReports numeric quantifiers like '{n,n}' that can be simplified to '{n}'.TypeScriptlogical
regexUnnecessaryOptionalAssertionsReports assertions inside optional quantifiers that have no effect.TypeScriptlogical
regexUnnecessaryReferentialBackreferencesReports backreferences that may reference a capturing group that was not matched.TypeScriptlogical
regexUnnecessarySetOperandsReports unnecessary operands in regular expression character class set operations.TypeScriptlogical
regexUnusedCapturingGroupsReports capturing groups in regular expressions that are never referenced.TypeScriptlogical
regexUnusedFlagsReports regular expression flags that have no effect on the pattern.TypeScriptlogical
regexUnusedLazyQuantifiersReports lazy quantifiers that have no effect because the quantifier is constant.TypeScriptlogical
regexUnusedQuantifiersReports quantifiers that match exactly once, making them unnecessary.TypeScriptlogical
regexValidityReports invalid regular expressions.TypeScriptlogical
regexWordMatchersReports character classes that match word characters and could use \w or \W instead.TypeScriptstylistic (strict)
regexZeroQuantifiersReports quantifiers with a maximum of zero, which are useless.TypeScriptlogical
relativePackageImportsTypeScript(none)
removeEventListenerExpressionsDisallow inline function expressions in removeEventListener calls.Browserlogical
renderedLiteralLeaksJSXlogical (strict)
renderReturnsVuelogical
renderReturnsJSXlogical
renderSetStatesReactlogical
repositoryDirectoryValidityPackageJSONlogical
repositoryPresenceEnforces that the repository property is present.PackageJSONlogical
repositoryShorthandEnforces using an object locator for repository.PackageJSONlogical
repositoryValidityEnforces that the repository property is valid.PackageJSONlogical
requireImportsReports CommonJS require() imports in favor of ES module imports.TypeScriptlogical
responseJsonMethodsPrefer Response.json() over new Response(JSON.stringify(...)) for JSON responses.TypeScriptstylistic
responseStaticJsonMethodsTypeScriptstylistic
restrictedBindDirectivesVuelogical
restrictedBlocksVuelogical
restrictedCallsAfterAwaitsVuelogical
restrictedClassesVuelogical
restrictedComponentNamesVuelogical
restrictedComponentNamesLegacyVuelogical
restrictedComponentOptionsVuelogical
restrictedComponentPropsReact(none)
restrictedCustomEventsVuelogical
restrictedDomPropsReact(none)
restrictedElementsReact(none)
restrictedGlobalsTypeScript(none)
restrictedHtmlElementsVuelogical
restrictedIdentifiersDisallows specific identifier names in binding positions.TypeScript(none)
restrictedImportPathsTypeScript(none)
restrictedImportsTypeScript(none)
restrictedImportsNode.js(none)
restrictedMatchersVitest(none)
restrictedOnDirectivesVuelogical
restrictedPropertiesTypeScript(none)
restrictedPropsVuelogical
restrictedPropTypesReact(none)
restrictedStaticAttributesVuelogical
restrictedSyntaxTypeScript(none)
restrictedSyntaxesVuelogical
restrictedTypesTypeScript(none)
restrictedViMethodsVitest(none)
returnAssignmentsReports using assignment expressions in return statements.TypeScriptstylistic
returnAwaitPromisesTypeScriptlogical
returnThisTypesEnforce that this is used when only this type is returned.TypeScriptlogical (strict)
returnVoidSafetyTypeScriptlogicalStrict
roleRedundanciesReports redundant ARIA roles on elements with implicit roles.JSXlogical
roleRedundanciesAstrological
roleRequiredAriaPropsReports ARIA roles missing their required ARIA properties.JSXlogical
roleRequiredAriaPropsAstrological
roleSupportedAriaPropsReports ARIA properties that are not supported by an element's role.JSXlogical
roleSupportedAriaPropsAstrological
roleTagsReports ARIA roles that have semantic HTML element equivalents.JSXlogical (strict)
roleTagsAstrological
rootIfDirectivesVuelogical
ruleCreationMethodsReports plugin rules created directly with language instead of through RuleCreator.Flintlogical
ruleDescriptionsFlintlogical
rulePresetsFlintlogical
rulesOfHooksReactlogical
ruleURLsFlintlogical
scopePropsReports scope props on non-th elements.JSXlogical
scopePropsAstrological
scriptSetupExportsVuelogical
scriptsNameCasingEnforce that names for scripts properties are in kebab case.PackageJSONstylistic
scriptsPresenceEnforces that the scripts property is present.PackageJSON(none)
scriptsValidityEnforces that the scripts property is valid.PackageJSONlogical
scriptSyncsNext.jslogical
scriptUrlsReports javascript: URLs that can act as a form of eval.Browserlogical
scriptUrlsJSXlogical
selectorConsistencySveltestylistic (strict)
selfAssignmentsReports self-assignments which have no effect and are likely errors.TypeScriptlogical
selfClosingHtmlElementsSveltestylistic (strict)
selfClosingTagsJSXstylistic
separateStaticClassesVuestylistic
sequencesReports using the comma operator in expressions.TypeScriptjavascript
setDirectiveChildContentConflictsAstrological
setHasExistenceChecksTypeScriptstylistic (strict)
setHtmlDirectivesReports using Astro's set:html directive, which injects content without escaping.Astrosecurity
setSizeLengthChecksPrefer Set.size over spreading into an array and accessing .length.TypeScriptstylistic (strict)
setsOrderTypeScriptsorting
setterReturnsReports return statements with values inside setters.TypeScriptjavascript
setTextDirectivesAstrological
setupPropsReactivityLossVuelogical
shadowedRestrictedNamesReports variable declarations that shadow JavaScript's restricted names.TypeScriptjavascript
shadowsTypeScriptstylistic
shebangsNode.js(none)
shorthandAttributesSveltestylistic (strict)
shorthandDirectivesSveltestylistic (strict)
shorthandStylePropertyOverridesSveltelogical
showDirectiveValidityVuelogical
showWhensSolidJSstylistic
sideEffectsPresenceEnforces that the sideEffects property is present.PackageJSONlogical
sideEffectsValidityEnforces that the sideEffects property is valid.PackageJSONlogical
simpleConditionOrderTypeScriptstylistic
singleEventPayloadsVuestylistic
singleVariableDeclarationsEnforces one variable per declaration statement.TypeScriptlogical
sizeComparisonOperatorsEnforce consistent style for .length and .size checks.TypeScriptstylistic (strict)
sliceEndLengthsTypeScriptstylistic
slotArgumentsVuelogical (strict)
slotDirectiveValidityVuelogical
slotNameCasingVuestylistic
slotsAsFunctionsVuelogical
slotStylesVuestylistic
snapshotLocalTextContextsVitestlogical
solidImportsSolidJSlogical
sparseArraysReports array literals with holes (sparse arrays).TypeScriptlogical
sparseArraysJSONlogical
sparseArraysVuelogical
specialElementPrefixesSveltelogical
spreadAccumulatorsReports spread operations that accumulate values in loops, causing quadratic time complexity.Performancelogical
spreadSyntaxesTypeScriptstylistic
statelessComponentsJSXstylistic
stateMutationsReactlogical
staticClassNamesOrderVuesorting
staticComponentsReactlogical
staticElementInteractionsReports static elements with event handlers that lack ARIA roles.JSXlogical
staticElementInteractionsAstrological
staticInlineStylesVuestylistic
staticMemberOnlyClassesReports classes that only contain static members.TypeScriptstylistic (strict)
strictBooleanExpressionsTypeScriptlogical
strictEqualityOperatorsVuelogical
stringCaseMismatchesReports string case method calls compared against literals with mismatched casing.TypeScriptlogical
stringCodePointsReports usage of charCodeAt and fromCharCode instead of their codePoint equivalents.TypeScriptlogical (strict)
stringMappingKeysEnforces mapping keys to be strings.YAMLlogical (strict)
stringSliceMethodsReports usage of substring instead of slice for string operations.TypeScriptstylistic (strict)
stringStartsEndsWithReports regex patterns that can be replaced with endsWith or startsWith.TypeScriptstylistic
structuredCloneMethodsReports JSON.parse(JSON.stringify()) patterns that can use structuredClone.TypeScriptstylistic (strict)
styleAttributesVuelogical
styleDirectivesSveltestylistic (strict)
styledJsxInDocumentsNext.jslogical
stylePropObjectsReactlogical (strict)
stylePropValiditySolidJSjavascript
suggestionMessageIdMatchesFlintlogical
svelteInternalImportsSveltelogical
svelteReactivityClassesSveltelogical
svgTitlesReports <svg> elements without a <title> child element.JSXlogical
switchCaseBreakPositionsTypeScriptstylistic
switchCasesOrderTypeScriptsorting
symbolDescriptionsReports Symbol() calls without description arguments.TypeScriptstylistic
tabIndexPositiveValuesReports positive tabIndex values.JSXlogical
tabIndexPositiveValuesAstrological
tableColumnCountsReports table rows with column counts that don't match the header.Markdownlogical
targetBlankLinksSveltesecurity (strict)
templateBareStringsVuelogical
templateDepthLimitsVuestylistic
templateExpressionValuesTypeScriptlogical
templateForKeysVuelogical
templateKeysVuelogical
templateLiteralEscapesConsistencyTypeScriptstylistic
templateLiteralsVuelogical
templateRefsVuelogical
templateRootMultiplicityVuelogical
templateRootValidityVuelogical
templateShadowsVuelogical (strict)
templateStringsVuestylistic
templateTargetBlanksVuesecurity
templateVForOnChildrenVuelogical
testBodyExpectationsVitestlogical
testCaseAssertionsViteststylistic
testCaseDuplicatesReports test cases that are identical to previous test cases.Flintlogical
testCaseNameDuplicatesReports test cases that have the same name as a previous test case.Flintlogical
testCaseNonStaticCodeTest case code should be a static string literal.Flintlogical
testCaseOnlyFlagsReports test cases that are marked only: true.Flintlogical
testCasePaddingLinesEnforces padding around test blocks.Viteststylistic (strict)
testCasesWithinDescribesReports importing from node:test.Viteststylistic (strict)
testConditionalsVitestlogical (strict)
testDefinitionFunctionsVitest(none)
testPrefixesViteststylistic
testShorthandsTest cases with only a code property can use string shorthand syntax instead of object literal syntax.Flintstylistic
textareaMustacheChildrenVuelogical
textDirectivesVuelogical
textDirectiveValidityVuelogical
thisAliasesReports assigning this to a variable.TypeScriptlogical
thisAssignmentsTypeScriptstylistic
thisBeforeSuperReports using this or super before calling super() in derived class constructors.TypeScriptjavascript
thisInTemplatesVuelogical (strict)
throwErrorsReports throwing values that are not Error objects.TypeScriptlogical
titleInDocumentHeadsNext.jslogical
titleRepeatsVitestlogical
titleValidityVitestlogical
toBeTypeOfsViteststylistic
toContainMatchersViteststylistic
toHaveBeenCalledTimesAssertionsVitest(none)
toHaveLengthMatchersViteststylistic
topLevelAwaitsReports top-level await expressions in files that export values.TypeScriptstylistic (strict)
topLevelAwaitsNode.js(none)
topLevelBrowserGlobalsSveltelogical (strict)
topLevelPackagePropertiesPackageJSON(none)
transitionTogglesVuelogical
tripleSlashReferencesReports triple-slash reference directives.TypeScriptlogical
tripleSlashReferenceValidityReports invalid triple-slash reference directives.TypeScriptlogical
trueAttributeShorthandsVuestylistic
truthyMatchersVitest(none)
tsCommentsReports problematic TypeScript comment directives or requires descriptions after directives.TypeScriptlogical
tslintCommentsReports TSLint disable/enable comments.TypeScriptstylistic
typeAssertionStylesReports angle-bracket type assertions.TypeScriptstylistic
typeConstituentDuplicatesTypeScriptlogical
typeConstituentsOrderTypeScriptsorting
typedObjectPropsVuelogical
typedRefsVuelogical
typeExportsTypeScriptstylistic
typeImportsReports imports that do not match the configured type import style.TypeScriptstylistic
typeofComparisonsReports typeof expressions that compare impossible string literals.TypeScriptjavascript
typePresenceEnforces that the type property is present.PackageJSONlogical
typesPresenceEnforces that the types property is present.PackageJSON(none)
typeValidityEnforces that the type property is valid.PackageJSONlogical
typosNext.jslogical
typosReactlogical
unassignedVariablesReports variables that are declared but never assigned a value.TypeScriptjavascript
unboundMethodsTypeScriptlogical
undefinedComponentsVuelogical
undefinedDirectivesVuelogical
undefinedElementsJSXlogical
undefinedInitialValuesTypeScriptstylistic
undefinedPropertiesVuelogical
undefinedTypeofChecksReports typeof undefined checks.TypeScriptstylistic (strict)
undefinedVariablesReports using variables that are not defined.TypeScriptjavascript
unescapedEntitiesDisallow unescaped HTML entities in JSX text that may cause rendering issues.JSXstylistic
unicodeBOMsReports files with Unicode Byte Order Marks (BOMs).TypeScriptstylistic
unifiedSignaturesTypeScriptlogical (strict)
unionTypesOrderTypeScriptsorting
unknownStyleDirectivePropertiesSveltelogical
unnecessaryAsyncExpectFunctionsVitest(none)
unnecessaryBindDirectivesVuelogical
unnecessaryBindsReports unnecessary .bind() calls.TypeScriptlogical
unnecessaryBlocksReports standalone block statements that don't create a meaningful scope.TypeScriptstylistic
unnecessaryBooleanCastsReports unnecessary boolean casts.TypeScriptstylistic
unnecessaryCatchesReports catch clauses that only rethrow the caught error without modification.TypeScriptlogical
unnecessaryCollectionArgumentsTypeScriptstylistic
unnecessaryComparisonsReports comparisons that are always true, always false, or can be simplified.TypeScriptlogical
unnecessaryComputedKeysTypeScriptstylistic
unnecessaryConcatenationReports string concatenation using the + operator when both operands are string literals.TypeScriptstylistic
unnecessaryConcatenationsVuelogical
unnecessaryConditionsTypeScriptlogical
unnecessaryConstructorsTypeScriptstylistic
unnecessaryContinuesTypeScriptlogical
unnecessaryEscapesReports unnecessary escape sequences in string literals and template strings.TypeScriptstylistic
unnecessaryEscapesJSONstylistic
unnecessaryFragmentsDisallow unnecessary JSX fragments that wrap a single child or have no children.JSXstylistic
unnecessaryIteratorArraysTypeScriptstylistic
unnecessaryLogicalComparisonsTypeScriptlogical
unnecessaryMathClampsReports unnecessary Math.min and Math.max calls with constant arguments or incorrect clamping patterns.TypeScriptlogical
unnecessaryMustachesVuelogical
unnecessaryNumericFractionsReports numeric literals with unnecessary zero fractions or dangling dots.TypeScriptstylistic
unnecessaryParenthesesVuestylistic
unnecessaryQualifiersTypeScriptstylistic
unnecessaryRenamesRenames that don't change the identifier name are unnecessary.TypeScriptstylistic
unnecessaryReturnsTypeScriptstylistic
unnecessarySpreadsTypeScriptlogical
unnecessaryStateWrapsSveltelogical
unnecessaryTemplateAttributesVuelogical
unnecessaryTemplateExpressionsTypeScriptlogical
unnecessaryTernariesReports ternary expressions that can be simplified to boolean expressions or logical operatorsTypeScriptstylistic (strict)
unnecessaryTypeAnnotationsTypeScriptstylistic
unnecessaryTypeArgumentsTypeScriptlogical
unnecessaryTypeAssertionsTypeScriptlogical
unnecessaryTypeConstraintsTypeScriptlogical
unnecessaryTypeConversionsTypeScriptlogical
unnecessaryTypeParametersTypeScriptlogical
unnecessaryUndefinedDefaultsTypeScriptlogical
unnecessaryUseStrictsReports unnecessary "use strict" directives in ES modules and classes.TypeScriptlogical
unpublishedBinsNode.jslogical
unpublishedImportsNode.jslogical
unreachableStatementsTypeScriptjavascript
unresolvedImportsTypeScript(none)
unresolvedNavigationsSveltelogical
unsafeDeclarationmergingTypeScriptlogical
unsafeEnumComparisonsTypeScriptlogical
unsafeFunctionTypesTypeScriptlogical
unsafeInlineScriptsAstrosecurity
unsafeLifecycleMethodsJSXlogical
unsafeNegationsReports negating the left operand of in or instanceof relations.TypeScriptjavascript
unsafeOptionalChainsTypeScriptjavascript
unsafeToStringTypeScriptlogical
unsafeTypeAssertionsTypeScriptlogical
unsafeUnaryNegationsTypeScriptlogical
unsupportedFeaturesVuelogical
unsupportedNodeAPIsNode.jslogical
unsupportedSyntaxReactlogical
unusedClassComponentMethodsReactlogical
unusedClassNamesSveltelogical (strict)
unusedComponentsVuelogical
unusedCssSelectorsAstrological
unusedEmitDeclarationsVuelogical
unusedExpressionsTypeScriptlogical
unusedLabelsTypeScriptstylistic
unusedMessageIdsReports message IDs defined in the messages object that are never used in recognized report calls.Flintlogical
unusedModulesTypeScript(none)
unusedPlaceholdersFlintlogical
unusedPrivateClassMembersTypeScriptlogical
unusedPropertiesVuelogical
unusedPropsSveltelogical
unusedPropTypesReactlogical
unusedRefsVuelogical
unusedStateReactlogical
unusedStyleDefineVarsAstrological
unusedSvelteIgnoresSveltelogical
unusedSwitchStatementsTypeScriptlogical
unusedValuesTypeScriptlogical
unusedVariablesTypeScriptlogical
unusedVariablesVuelogical
usageBeforeDefinitionTypeScriptjavascript
uselessChildrenSnippetsSveltelogical
uselessDefaultAssignmentsTypeScriptlogical
uselessMustachesSveltelogical
useMemoReturnsReactlogical
useStateDestructuresReactstylistic
useStrictDirectivesTypeScriptjavascript
validEachKeysSveltelogical
validStyleParsingSveltelogical (strict)
valueSafetyReports JSON values that are unsafe for data interchange.JSONlogical
varDeclarationsTypeScriptstylistic
variableBlockScopeUsageTypeScriptjavascript
variableDeclarationsOrderTypeScriptsorting
variableDeletionsReports attempting to delete variables with the delete operator.TypeScriptjavascript
variableRedeclarationsTypeScriptjavascript
variableUsesJSXlogical
variableUsesSolidJS(none)
versionPresenceEnforces that the version property is present.PackageJSONlogical
versionValidityEnforces that the version property is valid.PackageJSONlogical
vHtmlDirectivesVuelogical (strict)
vIfsWithVForsVuelogical
viNamespaceNamesVitest(none)
vitestGlobalImportingVitest(none)
vitestGlobalImportsViteststylistic
voidOperatorReports using the void operator.TypeScriptstylistic
vueCustomBlockParsingErrorsYAML(none)
vueCustomBlockParsingErrorsJSONlogical
vuePackageImportsVuelogical
watchAfterAwaitsVuelogical
watchArrowFunctionsVuelogical
webpackLoaderSyntaxTypeScript(none)
windowMessagingTargetOriginRequires specifying the targetOrigin argument when calling window.postMessage().Browserlogical
withStatementsReports using with statementsTypeScriptjavascript
workspacesPresenceEnforces that the workspaces property is present.PackageJSON(none)
workspacesValidityEnforces that the workspaces property is valid.PackageJSONlogical
wrapperObjectsFlags using new with Boolean, Number, or String, which creates wrapper objects instead of primitives.TypeScriptlogical
wrapperObjectTypesTypeScriptlogical
writableDerivedStoresSveltelogical
yamlKeysOrderYAML(none)
yamlSequenceValuesOrderYAMLsorting
Made with ❤️‍🔥 around the world by the Flint team and contributors.