JSPM

stylelint

16.19.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4954518
  • Score
    100M100P100Q192365F
  • License MIT

A mighty CSS linter that helps you avoid errors and enforce conventions.

Package Exports

  • stylelint
  • stylelint/lib/utils/FileCache.cjs
  • stylelint/lib/utils/FileCache.mjs
  • stylelint/lib/utils/addEmptyLineBefore.cjs
  • stylelint/lib/utils/addEmptyLineBefore.mjs
  • stylelint/lib/utils/addSemicolonForEditInfo.cjs
  • stylelint/lib/utils/addSemicolonForEditInfo.mjs
  • stylelint/lib/utils/allFilesIgnoredError.cjs
  • stylelint/lib/utils/allFilesIgnoredError.mjs
  • stylelint/lib/utils/arrayEqual.cjs
  • stylelint/lib/utils/arrayEqual.mjs
  • stylelint/lib/utils/beforeBlockString.cjs
  • stylelint/lib/utils/beforeBlockString.mjs
  • stylelint/lib/utils/blockString.cjs
  • stylelint/lib/utils/blockString.mjs
  • stylelint/lib/utils/blurInterpolation.cjs
  • stylelint/lib/utils/blurInterpolation.mjs
  • stylelint/lib/utils/checkAgainstRule.cjs
  • stylelint/lib/utils/checkAgainstRule.mjs
  • stylelint/lib/utils/checkInvalidCLIOptions.cjs
  • stylelint/lib/utils/checkInvalidCLIOptions.mjs
  • stylelint/lib/utils/configurationComment.cjs
  • stylelint/lib/utils/configurationComment.mjs
  • stylelint/lib/utils/configurationError.cjs
  • stylelint/lib/utils/configurationError.mjs
  • stylelint/lib/utils/containsString.cjs
  • stylelint/lib/utils/containsString.mjs
  • stylelint/lib/utils/createMapWithSet.cjs
  • stylelint/lib/utils/createMapWithSet.mjs
  • stylelint/lib/utils/dynamicImport.cjs
  • stylelint/lib/utils/dynamicImport.mjs
  • stylelint/lib/utils/eachDeclarationBlock.cjs
  • stylelint/lib/utils/eachDeclarationBlock.mjs
  • stylelint/lib/utils/eachNodeUpToRoot.cjs
  • stylelint/lib/utils/eachNodeUpToRoot.mjs
  • stylelint/lib/utils/emitDeprecationWarning.cjs
  • stylelint/lib/utils/emitDeprecationWarning.mjs
  • stylelint/lib/utils/filterFilePaths.cjs
  • stylelint/lib/utils/filterFilePaths.mjs
  • stylelint/lib/utils/findAnimationName.cjs
  • stylelint/lib/utils/findAnimationName.mjs
  • stylelint/lib/utils/findAtRuleContext.cjs
  • stylelint/lib/utils/findAtRuleContext.mjs
  • stylelint/lib/utils/findFontFamily.cjs
  • stylelint/lib/utils/findFontFamily.mjs
  • stylelint/lib/utils/findMediaFeatureNames.cjs
  • stylelint/lib/utils/findMediaFeatureNames.mjs
  • stylelint/lib/utils/findNodeUpToRoot.cjs
  • stylelint/lib/utils/findNodeUpToRoot.mjs
  • stylelint/lib/utils/fixEmptyLinesBefore.cjs
  • stylelint/lib/utils/fixEmptyLinesBefore.mjs
  • stylelint/lib/utils/flattenNestedSelectorsForRule.cjs
  • stylelint/lib/utils/flattenNestedSelectorsForRule.mjs
  • stylelint/lib/utils/functionArgumentsSearch.cjs
  • stylelint/lib/utils/functionArgumentsSearch.mjs
  • stylelint/lib/utils/getAtRuleParams.cjs
  • stylelint/lib/utils/getAtRuleParams.mjs
  • stylelint/lib/utils/getCacheFile.cjs
  • stylelint/lib/utils/getCacheFile.mjs
  • stylelint/lib/utils/getDeclarationValue.cjs
  • stylelint/lib/utils/getDeclarationValue.mjs
  • stylelint/lib/utils/getDimension.cjs
  • stylelint/lib/utils/getDimension.mjs
  • stylelint/lib/utils/getFileIgnorer.cjs
  • stylelint/lib/utils/getFileIgnorer.mjs
  • stylelint/lib/utils/getFormatter.cjs
  • stylelint/lib/utils/getFormatter.mjs
  • stylelint/lib/utils/getFormatterOptionsText.cjs
  • stylelint/lib/utils/getFormatterOptionsText.mjs
  • stylelint/lib/utils/getImportantPosition.cjs
  • stylelint/lib/utils/getImportantPosition.mjs
  • stylelint/lib/utils/getLexer.cjs
  • stylelint/lib/utils/getLexer.mjs
  • stylelint/lib/utils/getModulePath.cjs
  • stylelint/lib/utils/getModulePath.mjs
  • stylelint/lib/utils/getNextNonSharedLineCommentNode.cjs
  • stylelint/lib/utils/getNextNonSharedLineCommentNode.mjs
  • stylelint/lib/utils/getPreviousNonSharedLineCommentNode.cjs
  • stylelint/lib/utils/getPreviousNonSharedLineCommentNode.mjs
  • stylelint/lib/utils/getRuleSelector.cjs
  • stylelint/lib/utils/getRuleSelector.mjs
  • stylelint/lib/utils/getSchemeFromUrl.cjs
  • stylelint/lib/utils/getSchemeFromUrl.mjs
  • stylelint/lib/utils/getSelectorSourceIndex.cjs
  • stylelint/lib/utils/getSelectorSourceIndex.mjs
  • stylelint/lib/utils/getStrippedSelectorSource.cjs
  • stylelint/lib/utils/getStrippedSelectorSource.mjs
  • stylelint/lib/utils/getStylelintRule.cjs
  • stylelint/lib/utils/getStylelintRule.mjs
  • stylelint/lib/utils/hasANPlusBNotationPseudoClasses.cjs
  • stylelint/lib/utils/hasANPlusBNotationPseudoClasses.mjs
  • stylelint/lib/utils/hasBlock.cjs
  • stylelint/lib/utils/hasBlock.mjs
  • stylelint/lib/utils/hasColorFunction.cjs
  • stylelint/lib/utils/hasColorFunction.mjs
  • stylelint/lib/utils/hasDimension.cjs
  • stylelint/lib/utils/hasDimension.mjs
  • stylelint/lib/utils/hasEmptyLine.cjs
  • stylelint/lib/utils/hasEmptyLine.mjs
  • stylelint/lib/utils/hasInterpolation.cjs
  • stylelint/lib/utils/hasInterpolation.mjs
  • stylelint/lib/utils/hasLessInterpolation.cjs
  • stylelint/lib/utils/hasLessInterpolation.mjs
  • stylelint/lib/utils/hasNamedColor.cjs
  • stylelint/lib/utils/hasNamedColor.mjs
  • stylelint/lib/utils/hasPrefix.cjs
  • stylelint/lib/utils/hasPrefix.mjs
  • stylelint/lib/utils/hasPsvInterpolation.cjs
  • stylelint/lib/utils/hasPsvInterpolation.mjs
  • stylelint/lib/utils/hasScssInterpolation.cjs
  • stylelint/lib/utils/hasScssInterpolation.mjs
  • stylelint/lib/utils/hasTplInterpolation.cjs
  • stylelint/lib/utils/hasTplInterpolation.mjs
  • stylelint/lib/utils/hasValidHex.cjs
  • stylelint/lib/utils/hasValidHex.mjs
  • stylelint/lib/utils/hash.cjs
  • stylelint/lib/utils/hash.mjs
  • stylelint/lib/utils/isAfterComment.cjs
  • stylelint/lib/utils/isAfterComment.mjs
  • stylelint/lib/utils/isAfterSingleLineComment.cjs
  • stylelint/lib/utils/isAfterSingleLineComment.mjs
  • stylelint/lib/utils/isAfterStandardPropertyDeclaration.cjs
  • stylelint/lib/utils/isAfterStandardPropertyDeclaration.mjs
  • stylelint/lib/utils/isAutoprefixable.cjs
  • stylelint/lib/utils/isAutoprefixable.mjs
  • stylelint/lib/utils/isBlocklessAtRuleAfterBlocklessAtRule.cjs
  • stylelint/lib/utils/isBlocklessAtRuleAfterBlocklessAtRule.mjs
  • stylelint/lib/utils/isBlocklessAtRuleAfterSameNameBlocklessAtRule.cjs
  • stylelint/lib/utils/isBlocklessAtRuleAfterSameNameBlocklessAtRule.mjs
  • stylelint/lib/utils/isContextFunctionalPseudoClass.cjs
  • stylelint/lib/utils/isContextFunctionalPseudoClass.mjs
  • stylelint/lib/utils/isCounterIncrementCustomIdentValue.cjs
  • stylelint/lib/utils/isCounterIncrementCustomIdentValue.mjs
  • stylelint/lib/utils/isCounterResetCustomIdentValue.cjs
  • stylelint/lib/utils/isCounterResetCustomIdentValue.mjs
  • stylelint/lib/utils/isCustomElement.cjs
  • stylelint/lib/utils/isCustomElement.mjs
  • stylelint/lib/utils/isCustomFunction.cjs
  • stylelint/lib/utils/isCustomFunction.mjs
  • stylelint/lib/utils/isCustomMediaQuery.cjs
  • stylelint/lib/utils/isCustomMediaQuery.mjs
  • stylelint/lib/utils/isCustomProperty.cjs
  • stylelint/lib/utils/isCustomProperty.mjs
  • stylelint/lib/utils/isCustomSelector.cjs
  • stylelint/lib/utils/isCustomSelector.mjs
  • stylelint/lib/utils/isDescriptorDeclaration.cjs
  • stylelint/lib/utils/isDescriptorDeclaration.mjs
  • stylelint/lib/utils/isFirstNested.cjs
  • stylelint/lib/utils/isFirstNested.mjs
  • stylelint/lib/utils/isFirstNodeOfRoot.cjs
  • stylelint/lib/utils/isFirstNodeOfRoot.mjs
  • stylelint/lib/utils/isHexColor.cjs
  • stylelint/lib/utils/isHexColor.mjs
  • stylelint/lib/utils/isKeyframeRule.cjs
  • stylelint/lib/utils/isKeyframeRule.mjs
  • stylelint/lib/utils/isKeyframeSelector.cjs
  • stylelint/lib/utils/isKeyframeSelector.mjs
  • stylelint/lib/utils/isMathFunction.cjs
  • stylelint/lib/utils/isMathFunction.mjs
  • stylelint/lib/utils/isNonNegativeInteger.cjs
  • stylelint/lib/utils/isNonNegativeInteger.mjs
  • stylelint/lib/utils/isNumbery.cjs
  • stylelint/lib/utils/isNumbery.mjs
  • stylelint/lib/utils/isOnlyWhitespace.cjs
  • stylelint/lib/utils/isOnlyWhitespace.mjs
  • stylelint/lib/utils/isPathNotFoundError.cjs
  • stylelint/lib/utils/isPathNotFoundError.mjs
  • stylelint/lib/utils/isScssVariable.cjs
  • stylelint/lib/utils/isScssVariable.mjs
  • stylelint/lib/utils/isSharedLineComment.cjs
  • stylelint/lib/utils/isSharedLineComment.mjs
  • stylelint/lib/utils/isSingleLineString.cjs
  • stylelint/lib/utils/isSingleLineString.mjs
  • stylelint/lib/utils/isStandardSyntaxAtRule.cjs
  • stylelint/lib/utils/isStandardSyntaxAtRule.mjs
  • stylelint/lib/utils/isStandardSyntaxColorFunction.cjs
  • stylelint/lib/utils/isStandardSyntaxColorFunction.mjs
  • stylelint/lib/utils/isStandardSyntaxCombinator.cjs
  • stylelint/lib/utils/isStandardSyntaxCombinator.mjs
  • stylelint/lib/utils/isStandardSyntaxComment.cjs
  • stylelint/lib/utils/isStandardSyntaxComment.mjs
  • stylelint/lib/utils/isStandardSyntaxDeclaration.cjs
  • stylelint/lib/utils/isStandardSyntaxDeclaration.mjs
  • stylelint/lib/utils/isStandardSyntaxFunction.cjs
  • stylelint/lib/utils/isStandardSyntaxFunction.mjs
  • stylelint/lib/utils/isStandardSyntaxHexColor.cjs
  • stylelint/lib/utils/isStandardSyntaxHexColor.mjs
  • stylelint/lib/utils/isStandardSyntaxKeyframesName.cjs
  • stylelint/lib/utils/isStandardSyntaxKeyframesName.mjs
  • stylelint/lib/utils/isStandardSyntaxProperty.cjs
  • stylelint/lib/utils/isStandardSyntaxProperty.mjs
  • stylelint/lib/utils/isStandardSyntaxRule.cjs
  • stylelint/lib/utils/isStandardSyntaxRule.mjs
  • stylelint/lib/utils/isStandardSyntaxSelector.cjs
  • stylelint/lib/utils/isStandardSyntaxSelector.mjs
  • stylelint/lib/utils/isStandardSyntaxTypeSelector.cjs
  • stylelint/lib/utils/isStandardSyntaxTypeSelector.mjs
  • stylelint/lib/utils/isStandardSyntaxUrl.cjs
  • stylelint/lib/utils/isStandardSyntaxUrl.mjs
  • stylelint/lib/utils/isStandardSyntaxValue.cjs
  • stylelint/lib/utils/isStandardSyntaxValue.mjs
  • stylelint/lib/utils/isUnicodeRangeDescriptor.cjs
  • stylelint/lib/utils/isUnicodeRangeDescriptor.mjs
  • stylelint/lib/utils/isUnicodeSupported.cjs
  • stylelint/lib/utils/isUnicodeSupported.mjs
  • stylelint/lib/utils/isUrlFunction.cjs
  • stylelint/lib/utils/isUrlFunction.mjs
  • stylelint/lib/utils/isValidFontSize.cjs
  • stylelint/lib/utils/isValidFontSize.mjs
  • stylelint/lib/utils/isValidHex.cjs
  • stylelint/lib/utils/isValidHex.mjs
  • stylelint/lib/utils/isValidIdentifier.cjs
  • stylelint/lib/utils/isValidIdentifier.mjs
  • stylelint/lib/utils/isVarFunction.cjs
  • stylelint/lib/utils/isVarFunction.mjs
  • stylelint/lib/utils/isVariable.cjs
  • stylelint/lib/utils/isVariable.mjs
  • stylelint/lib/utils/isWhitespace.cjs
  • stylelint/lib/utils/isWhitespace.mjs
  • stylelint/lib/utils/matchesStringOrRegExp.cjs
  • stylelint/lib/utils/matchesStringOrRegExp.mjs
  • stylelint/lib/utils/mathMLTags.cjs
  • stylelint/lib/utils/mathMLTags.mjs
  • stylelint/lib/utils/narrowFixRange.cjs
  • stylelint/lib/utils/narrowFixRange.mjs
  • stylelint/lib/utils/noFilesFoundError.cjs
  • stylelint/lib/utils/noFilesFoundError.mjs
  • stylelint/lib/utils/nodeContextLookup.cjs
  • stylelint/lib/utils/nodeContextLookup.mjs
  • stylelint/lib/utils/nodeFieldIndices.cjs
  • stylelint/lib/utils/nodeFieldIndices.mjs
  • stylelint/lib/utils/normalizeFixMode.cjs
  • stylelint/lib/utils/normalizeFixMode.mjs
  • stylelint/lib/utils/normalizeSelector.cjs
  • stylelint/lib/utils/normalizeSelector.mjs
  • stylelint/lib/utils/optionsMatches.cjs
  • stylelint/lib/utils/optionsMatches.mjs
  • stylelint/lib/utils/parseCustomMediaQuery.cjs
  • stylelint/lib/utils/parseCustomMediaQuery.mjs
  • stylelint/lib/utils/parseMediaQuery.cjs
  • stylelint/lib/utils/parseMediaQuery.mjs
  • stylelint/lib/utils/parseSelector.cjs
  • stylelint/lib/utils/parseSelector.mjs
  • stylelint/lib/utils/pluralize.cjs
  • stylelint/lib/utils/pluralize.mjs
  • stylelint/lib/utils/putIfAbsent.cjs
  • stylelint/lib/utils/putIfAbsent.mjs
  • stylelint/lib/utils/rangesOverlap.cjs
  • stylelint/lib/utils/rangesOverlap.mjs
  • stylelint/lib/utils/rawNodeString.cjs
  • stylelint/lib/utils/rawNodeString.mjs
  • stylelint/lib/utils/regexes.cjs
  • stylelint/lib/utils/regexes.mjs
  • stylelint/lib/utils/removeEmptyLinesBefore.cjs
  • stylelint/lib/utils/removeEmptyLinesBefore.mjs
  • stylelint/lib/utils/report.cjs
  • stylelint/lib/utils/report.mjs
  • stylelint/lib/utils/reportCommentProblem.cjs
  • stylelint/lib/utils/reportCommentProblem.mjs
  • stylelint/lib/utils/resolveSilent.cjs
  • stylelint/lib/utils/resolveSilent.mjs
  • stylelint/lib/utils/ruleMessages.cjs
  • stylelint/lib/utils/ruleMessages.mjs
  • stylelint/lib/utils/setAtRuleParams.cjs
  • stylelint/lib/utils/setAtRuleParams.mjs
  • stylelint/lib/utils/setDeclarationValue.cjs
  • stylelint/lib/utils/setDeclarationValue.mjs
  • stylelint/lib/utils/typeGuards.cjs
  • stylelint/lib/utils/typeGuards.mjs
  • stylelint/lib/utils/uniteSets.cjs
  • stylelint/lib/utils/uniteSets.mjs
  • stylelint/lib/utils/validateObjectWithArrayProps.cjs
  • stylelint/lib/utils/validateObjectWithArrayProps.mjs
  • stylelint/lib/utils/validateObjectWithProps.cjs
  • stylelint/lib/utils/validateObjectWithProps.mjs
  • stylelint/lib/utils/validateOptions.cjs
  • stylelint/lib/utils/validateOptions.mjs
  • stylelint/lib/utils/validateTypes.cjs
  • stylelint/lib/utils/validateTypes.mjs
  • stylelint/lib/utils/vendor.cjs
  • stylelint/lib/utils/vendor.mjs
  • stylelint/package.json

Readme

Stylelint

npm version Build Status npm downloads

A mighty CSS linter that helps you avoid errors and enforce conventions.

Features

It's mighty as it:

  • has over 100 built-in rules for modern CSS syntax and features
  • supports plugins so you can create your own custom rules
  • automatically fixes problems where possible
  • supports shareable configs that you can create or extend
  • can be customized to your exact needs
  • has 15k unit tests making it robust
  • is trusted by companies worldwide like Google and GitHub

And it can be extended to:

  • extract embedded styles from HTML, Markdown and CSS-in-JS template literals
  • parse CSS-like languages like SCSS, Sass, Less and SugarSS

How it'll help you

It'll help you avoid errors, for example:

  • invalid things, e.g. malformed grid areas
  • valid things that are problematic, e.g. duplicate selectors
  • unknown things, e.g. misspelled property names

And enforce conventions, for example:

  • disallow things, e.g. specific units
  • enforce naming patterns, e.g. for custom properties
  • set limits, e.g. the number of ID selectors
  • specify notations, e.g. for modern color functions

We recommend using a pretty printer like Prettier alongside Stylelint. Linters and pretty printers are complementary tools that work together to help you write consistent and error-free code.

Example output

Example

Guides

Contributors

Stylelint is maintained by volunteers. Without the code contributions from all these fantastic people, Stylelint would not exist. Become a contributor.

Alumni

We'd like to thank all past members for their invaluable contributions, including two of Stylelint's co-creators @davidtheclark and @MoOx.

Sponsors

Thank you to all our sponsors! Become a sponsor.

Backers

Thank you to all our backers! Become a backer.

Website hosting

Deploys by Netlify

License

The MIT License.