Gathering detailed insights and metrics for stylelint-config-sass-guidelines
Gathering detailed insights and metrics for stylelint-config-sass-guidelines
Gathering detailed insights and metrics for stylelint-config-sass-guidelines
Gathering detailed insights and metrics for stylelint-config-sass-guidelines
stylelint-config-mass
StyleLint configuration based on `stylelint-config-sass-guidelines` used by Bod CLI.
stylelint-scss
A collection of SCSS-specific rules for Stylelint
stylelint-config-tailwindcss
tailwindcss shareable config for stylelint
stylelint-config-recommended
Recommended shareable config for Stylelint
âš™ A stylelint config inspired by https://sass-guidelin.es/
npm install stylelint-config-sass-guidelines
Module System
Min. Node Version
Typescript Support
Node Version
NPM Version
445 Stars
227 Commits
37 Forks
9 Watching
5 Branches
15 Contributors
Updated on 31 Oct 2024
Minified
Minified + Gzipped
JavaScript (100%)
Cumulative downloads
Total Downloads
Last day
-1%
60,609
Compared to previous day
Last week
3.4%
302,777
Compared to previous week
Last month
10.2%
1,267,777
Compared to previous month
Last year
0.4%
13,462,604
Compared to previous year
A stylelint config inspired by sass-guidelin.es.
This linter has been designed / tested with SCSS syntax based on the SCSS guidelines documented in https://sass-guidelin.es/. It is intended for use with SCSS syntax, not Sass (tab style) syntax.
This config:
stylelint-scss
plugin module and turns on rules for SCSS specific code@stylistic/stylelint-plugin
plugin module and turns on rules for stylistic settingspostcss-scss
custom syntax module and configures itstylelint
postcss
Using NPM
1$ npm i -D stylelint postcss stylelint-config-sass-guidelines
Using Yarn
1$ yarn add -D stylelint postcss stylelint-config-sass-guidelines
Using PNPM
1$ pnpm add -D stylelint postcss stylelint-config-sass-guidelines
Set your stylelint config to:
1{ 2 "extends": "stylelint-config-sass-guidelines" 3}
Simply add a "rules"
key to your config and add your overrides there.
For example:
1{ 2 "extends": "stylelint-config-sass-guidelines", 3 "rules": { 4 "selector-max-compound-selectors": 4, 5 "value-no-vendor-prefix": false 6 } 7}
This is a list of the lints turned on in this configuration, and what they do.
at-rule-disallowed-list
: Specify a list of disallowed at-rules.
"debug"
Disallow the use of @debug
.at-rule-no-unknown
: Disallow unknown at-rules.at-rule-no-vendor-prefix
: Disallow vendor prefixes for at-rules.block-no-empty
: Disallow empty blocks.color-hex-length
: Always use short hex notation, where available.color-named
: Colors must never be named.color-no-invalid-hex
: Hex values must be valid.declaration-block-single-line-max-declarations
: There should never be more than 1
declaration per line.declaration-property-value-disallowed-list
: Specify a list of disallowed property and value pairs within declarations.
^border
: Disallow the use of the word none
for borders, use 0
instead. The intent of this rule is to enforce consistency, rather than define which is "better."function-url-quotes
: URLs must always be quoted.length-zero-no-unit
: Disallow units for zero lengths.max-nesting-depth
: Limit the allowed nesting depth to 1
. Ignore: Nested at-rules @media
, @supports
, and @include
.media-feature-name-no-vendor-prefix
: Disallow vendor prefixes for media feature names.property-no-unknown
: Disallow unknown propertiesproperty-no-vendor-prefix
: Disallow vendor prefixes for properties.shorthand-property-no-redundant-values
: Disallow redundant values in shorthand properties.rule-empty-line-before
: There must always be an empty line before multi-line rules. Except: Nested rules that are the first of their parent rule. Ignore: Rules that come after a comment.scss/at-extend-no-missing-placeholder
: Disallow at-extends (@extend
) with missing placeholders.scss/at-function-pattern
: SCSS functions must be written in lowercase and match the regex ^[a-z]+([a-z0-9-]+[a-z0-9]+)?$
.scss/at-import-partial-extension-disallowed-list
: Specify list of disallowed file extensions for partial names in @import
commands.
.scss
: Disallow the use of the .scss
file extension in imports.scss/at-rule-no-unknown
: SCSS mixins must be written in lowercase and match the regex ^[a-z]+([a-z0-9-]+[a-z0-9]+)?$
.scss/dollar-variable-colon-space-after
: Require a single space after the colon in $-variable declarations.scss/dollar-variable-colon-space-before
: Disallow whitespace before the colon in $-variable declarations.scss/dollar-variable-pattern
: SCSS variables must be written in lowercase and match the regex ^[a-z]+([a-z0-9-]+[a-z0-9]+)?$
.scss/load-no-partial-leading-underscore
: Disallow leading underscore in partial names in @import
.scss/no-global-function-names
: Disallows the use of global function names, as these global functions are now located inside built-in Sass modules.scss/percent-placeholder-pattern
: SCSS %
-placeholders must be written in lowercase and match the regex ^[a-z]+([a-z0-9-]+[a-z0-9]+)?$
.scss/selector-no-redundant-nesting-selector
: Disallow redundant nesting selectors (&
).selector-class-pattern
: Selectors must be written in lowercase and match the regex ^(?:u|is|has)-[a-z][a-zA-Z0-9]*$|^(?!u|is|has)[a-zA-Z][a-zA-Z0-9]*(?:-[a-z][a-zA-Z0-9]*)?(?:--[a-z][a-zA-Z0-9]*)?$
.selector-max-compound-selectors
: Limit the number of compound selectors in a selector to 3
.selector-max-id
: Disallow id selectors.selector-no-qualifying-type
: Disallow qualifying a selector by type.selector-no-vendor-prefix
: Disallow vendor prefixes for selectors.selector-pseudo-element-colon-notation
: Applicable pseudo-elements must always use the double colon notation.selector-pseudo-element-no-unknown
: Disallow unknown pseudo-element selectors.@stylistic/block-opening-brace-space-before
: There must always be a single space before the opening brace.
@stylistic/color-hex-case
: Hex colors must be written in lowercase.
@stylistic/declaration-bang-space-after
: There must never be whitespace after the bang.
@stylistic/declaration-bang-space-before
: There must always be a single space before the bang.
@stylistic/declaration-block-semicolon-newline-after
: There must always be a newline after the semicolon.
@stylistic/declaration-block-semicolon-space-before
: There must never be whitespace before the semicolons.
@stylistic/declaration-block-trailing-semicolon
: There must always be a trailing semicolon.
@stylistic/declaration-colon-space-after
: There must always be a single space after the colon if the declaration's value is single-line.
@stylistic/declaration-colon-space-before
: There must never be whitespace before the colon.
@stylistic/function-comma-space-after
: There must always be a single space after the commas in single-line functions.
@stylistic/function-parentheses-space-inside
: There must never be whitespace on the inside of the parentheses of functions.
@stylistic/indentation
: Indentation should always be 2 spaces.
@stylistic/media-feature-parentheses-space-inside
: There must never be whitespace on the inside of the parentheses of media features.
@stylistic/no-missing-end-of-source-newline
: Disallow missing end-of-file newlines in non-empty files.
@stylistic/number-leading-zero
: There must always be a leading zero.
@stylistic/number-no-trailing-zeros
: Disallow trailing zeros in numbers.
@stylistic/selector-list-comma-newline-after
: There must always be a newline after the commas of selector lists.
@stylistic/string-quotes
: Strings must always be wrapped with single quotes.
value-no-vendor-prefix
: Disallow vendor prefixes for values.stylelint-config-sass-guidelines is maintained by Brett Jankord and contributions from the community. Without the code contributions from all these fantastic people, stylelint-config-sass-guidelines would not exist.
No vulnerabilities found.
Reason
no dangerous workflow patterns detected
Reason
no binaries found in the repo
Reason
license file detected
Details
Reason
0 existing vulnerabilities detected
Reason
8 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 7
Reason
dependency not pinned by hash detected -- score normalized to 3
Details
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
Found 1/14 approved changesets -- score normalized to 0
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
Reason
project is not fuzzed
Details
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
Score
Last Scanned on 2024-11-25
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More