From ab54adc9beee4382fb91931b3dac6c4f7a5ffda2 Mon Sep 17 00:00:00 2001 From: Richard Hallows Date: Sun, 22 Dec 2024 05:01:35 +0000 Subject: [PATCH] Document things that align with the awesome manifesto (#84) Co-authored-by: Gary Gozlan --- README.md | 81 +++++++++++++++++-------------------------------------- 1 file changed, 25 insertions(+), 56 deletions(-) diff --git a/README.md b/README.md index 600b3e4..078e534 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,6 @@ - - # Awesome Stylelint [![Awesome](https://awesome.re/badge.svg)](https://awesome.re) -Stylelint - -> A list of awesome Stylelint configs, plugins, integrations etc. +A list of awesome Stylelint configs, plugins, integrations etc. ## Contents @@ -22,29 +18,32 @@ ## Analysis platforms - [codacy-stylelint](https://github.com/codacy/codacy-stylelint) - Codacy integration. -- [codeclimate-stylelint](https://github.com/gilbarbara/codeclimate-stylelint) - Code Climate integration. - [megalinter](https://megalinter.io) - Integrated into MegaLinter. - [putout](https://github.com/coderaiser/putout) - Integrated into Putout. +- [Qlty plugin](https://github.com/qltysh/qlty/tree/main/qlty-plugins/plugins/linters/stylelint) - Qlty integration. - [reviewdog/action-stylelint](https://github.com/reviewdog/action-stylelint) - Reviewdog GitHub Action. ## Configs -- [@archoleat/stylelint-config-extended-scss](https://www.npmjs.com/package/@archoleat/stylelint-config-extended-scss) - Archoleat config for SCSS with property sorting. -- [@primer/stylelint-config](https://www.npmjs.com/package/@primer/stylelint-config) - The GitHub shareable config. -- [@stylistic/stylelint-config](https://www.npmjs.com/package/@stylistic/stylelint-config) - The stylistic shareable config for `@stylistic/stylelint-plugin`. -- [@wordpress/stylelint-config](https://www.npmjs.com/package/@wordpress/stylelint-config) - WordPress CSS Coding Standards shareable config. -- [stylelint-config-clean-order](https://www.npmjs.com/package/stylelint-config-clean-order) - Order styles with stylelint-order. -- [stylelint-config-hudochenkov](https://www.npmjs.com/package/stylelint-config-hudochenkov) - Personal configs use stylelint-order. -- [stylelint-config-idiomatic-order](https://www.npmjs.com/package/stylelint-config-idiomatic-order) - Order styles based on idiomatic-css. -- [stylelint-config-prettier-scss](https://www.npmjs.com/package/stylelint-config-prettier-scss) - Turns off conflicting rules when using Prettier for SCSS. -- [stylelint-config-property-sort-order-smacss](https://www.npmjs.com/package/stylelint-config-property-sort-order-smacss) - Property Sort Ordering based on the SMACSS methodology. -- [stylelint-config-recess-order](https://www.npmjs.com/package/stylelint-config-recess-order) - Sorts CSS properties the way Recess did and Bootstrap does. +### Custom syntaxes + - [stylelint-config-recommended-vue](https://www.npmjs.com/package/stylelint-config-recommended-vue) - The recommended shareable Vue config for Stylelint. - [stylelint-config-sass-guidelines](https://www.npmjs.com/package/stylelint-config-sass-guidelines) - Sass guidelines config. - [stylelint-config-standard-scss](https://www.npmjs.com/package/stylelint-config-standard-scss) - Standard config for SCSS. -- [stylelint-config-standard](https://www.npmjs.com/package/stylelint-config-standard) - Standard config for CSS. -- [stylelint-config-two-dash-bem](https://www.npmjs.com/package/stylelint-config-two-dash-bem) - BEM Convention zero dependency rule enforcing Two Dashes style for Stylelint. -- [stylelint-config-wikimedia](https://www.npmjs.com/package/stylelint-config-wikimedia) - Wikimedia CSS Coding Standards shareable config. + +### Order + +- [stylelint-config-alphabetical-order](https://www.npmjs.com/package/stylelint-config-alphabetical-order) - Sorts properties alphabetically. +- [stylelint-config-recess-order](https://www.npmjs.com/package/stylelint-config-recess-order) - Sorts properties logically the way Recess did and Bootstrap does. + +### Stylistic + +- [@stylistic/stylelint-config](https://www.npmjs.com/package/@stylistic/stylelint-config) - The stylistic shareable config for `@stylistic/stylelint-plugin`. + +### Large examples + +- [@primer/stylelint-config](https://www.npmjs.com/package/@primer/stylelint-config) - The GitHub shareable config. +- [@shopify/stylelint-plugin](https://www.npmjs.com/package/@shopify/stylelint-plugin) - The Shopify shareable config. ## Custom syntaxes @@ -56,17 +55,14 @@ - [postcss-markdown](https://www.npmjs.com/package/postcss-markdown) - Markdown. - [postcss-sass](https://www.npmjs.com/package/postcss-sass) - Sass. - [postcss-scss](https://www.npmjs.com/package/postcss-scss) - SCSS. -- [postcss-styled-components](https://www.npmjs.com/package/postcss-styled-components) - Styled-components. - [postcss-styled-syntax](https://www.npmjs.com/package/postcss-styled-syntax) - Template literals. +- [sugarss](https://www.npmjs.com/package/sugarss) - SugarSS. ## Editor integrations - [ale](https://github.com/dense-analysis/ale) - Vim plugin. - [coc-stylelint](https://github.com/neoclide/coc-stylelint) - Neovim. language server extension. - [flycheck](https://github.com/flycheck/flycheck) - Emacs extension. -- [linter-stylelint](https://github.com/AtomLinter/linter-stylelint) - Atom plugin. -- [null-ls](https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#stylelint-1) - Neovim plugin. -- [sublimeLinter-contrib-stylelint_d](https://github.com/jo-sm/SublimeLinter-contrib-stylelint_d) - Sublime Text plugin as daemon. - [sublimeLinter-stylelint](https://github.com/SublimeLinter/SublimeLinter-stylelint) - Sublime Text plugin. - [vscode-stylelint](https://marketplace.visualstudio.com/items?itemName=stylelint.vscode-stylelint) - VS Code extension. @@ -76,7 +72,6 @@ - [stylelint-actions-formatters](https://www.npmjs.com/package/stylelint-actions-formatters) - Output errors and warnings for GitHub Actions. - [stylelint-checkstyle-formatter](https://www.npmjs.com/package/stylelint-checkstyle-formatter) - Output Checkstyle XML reports. - [stylelint-codeframe-formatter](https://www.npmjs.com/package/stylelint-codeframe-formatter) - Output codeframe errors and warnings. -- [stylelint-formatter-github](https://www.npmjs.com/package/stylelint-formatter-github) - Output errors and warnings directly in GitHub pull requests. - [stylelint-formatter-gitlab-code-quality-report](https://www.npmjs.com/package/stylelint-formatter-gitlab-code-quality-report) - Output errors and warnings as a GitLab Code Quality report (artifact). - [stylelint-formatter-pretty](https://www.npmjs.com/package/stylelint-formatter-pretty) - A pretty formatter for terminals. @@ -84,15 +79,9 @@ ### Architecture and methodologies -- [stylelint-css-modules](https://www.npmjs.com/package/stylelint-css-modules) - Enforce CSS modules architecture (Pack). -- [stylelint-css-modules-no-global-scoped-selector](https://www.npmjs.com/package/stylelint-css-modules-no-global-scoped-selector) - Disallow global-scoped selectors in CSS Modules. -- [stylelint-force-app-name-prefix](https://www.npmjs.com/package/stylelint-force-app-name-prefix) - Enforce app name prefix for rules. -- [stylelint-itcss](https://www.npmjs.com/package/stylelint-itcss) - Enforce ITCSS architecture (Pack). - [stylelint-plugin-defensive-css](https://www.npmjs.com/package/stylelint-plugin-defensive-css) - Enforce defensive CSS best practices (Pack). - [stylelint-react-native](https://www.npmjs.com/package/stylelint-react-native) - Enforce React Native rules (Pack). - [stylelint-selector-bem-pattern](https://www.npmjs.com/package/stylelint-selector-bem-pattern) - Enforce BEM patterns for selectors. -- [stylelint-selector-tag-no-without-class](https://www.npmjs.com/package/stylelint-selector-tag-no-without-class) - Disallow certain tags without a class qualifier in selectors. -- [stylelint-suitcss](https://www.npmjs.com/package/stylelint-suitcss) - Enforce SUITCSS conventions (Pack). ### Browser compatibility @@ -101,7 +90,6 @@ ### Colors -- [stylelint-color-format](https://www.npmjs.com/package/stylelint-color-format) - Enforce HEX, RGB or HSL colors. - [stylelint-gamut](https://www.npmjs.com/package/stylelint-gamut) - Enforce standard different color spaces (Pack). - [stylelint-no-indistinguishable-colors](https://www.npmjs.com/package/stylelint-no-indistinguishable-colors) - Disallow colors that are suspiciously close to being identical. @@ -109,58 +97,39 @@ - [stylelint-no-unresolved-module](https://www.npmjs.com/package/stylelint-no-unresolved-module) - Disallow unresolved imports (import-like or `url`). -### Images - -- [stylelint-images](https://www.npmjs.com/package/stylelint-images) - Enforce good performance and avoid mistakes with images (Pack). - ### Internationalization - [stylelint-plugin-logical-css](https://www.npmjs.com/package/stylelint-plugin-logical-css) - Enforce logical CSS properties, values and units (Pack). -- [stylelint-use-logical-spec](https://www.npmjs.com/package/stylelint-use-logical-spec) - Enforce usage of logical properties and values. -### Nesting and specificity +### Nesting -- [stylelint-at-rule-no-children](https://www.npmjs.com/package/stylelint-at-rule-no-children) - Disallow block rule declarations inside at-rules. - [stylelint-use-nesting](https://www.npmjs.com/package/stylelint-use-nesting) - Enforce nesting when it is possible. +### Order + +- [stylelint-order](https://www.npmjs.com/package/stylelint-order) - Enforce a specific order for things like properties (Pack). + ### Pre-processors -- [stylelint-sass-render-errors](https://www.npmjs.com/package/stylelint-sass-render-errors) - Display Sass render errors and deprecations. - [stylelint-scss](https://www.npmjs.com/package/stylelint-scss) - Enforce SCSS-specific conventions (Pack). - [stylelint-stylus](https://www.npmjs.com/package/stylelint-stylus) - Enforce Stylus-specific conventions. ### Performance -- [stylelint-high-performance-animation](https://github.com/kristerkari/stylelint-high-performance-animation) - Disallow low-performance animation and transition properties. +- [stylelint-high-performance-animation](https://www.npmjs.com/package/stylelint-high-performance-animation) - Disallow low-performance animation and transition properties. ### Stylistic - [@stylistic/stylelint-plugin](https://www.npmjs.com/package/@stylistic/stylelint-plugin) - Enforce stylistic conventions by using the rules removed in Stylelint 16.0.0 (Pack). -- [stylelint-file-max-lines](https://www.npmjs.com/package/stylelint-file-max-lines) - Limit a maximum number of lines per file. -- [stylelint-group-selectors](https://www.npmjs.com/package/stylelint-group-selectors) - Group selectors that have the same set of properties and values. -- [stylelint-max-lines](https://www.npmjs.com/package/stylelint-max-lines) - Limit the number of lines in a source. -- [stylelint-order](https://www.npmjs.com/package/stylelint-order) - Enforce a specific order for things like properties (Pack). -- [stylelint-transform-function-no-whitespace](https://www.npmjs.com/package/stylelint-transform-function-no-whitespace) - Disallow whitespace between transform functions and their parentheses. -- [stylelint-selector-no-empty](https://www.npmjs.com/package/stylelint-selector-no-empty) - Disallow empty selectors. ### Variables and constraints -- [stylelint-8-point-grid](https://www.npmjs.com/package/stylelint-8-point-grid) - Enforce an 8-point grid. - [stylelint-declaration-block-no-ignored-properties](https://www.npmjs.com/package/stylelint-declaration-block-no-ignored-properties) - Disallow property values that are ignored. - [stylelint-declaration-strict-value](https://www.npmjs.com/package/stylelint-declaration-strict-value) - Enforce variables, functions or keywords for the value of specific properties. - [stylelint-media-use-custom-media](https://www.npmjs.com/package/stylelint-media-use-custom-media) - Enforce usage of custom media queries. - [stylelint-no-restricted-syntax](https://www.npmjs.com/package/stylelint-no-restricted-syntax) - Disallow specified syntax. - [stylelint-scales](https://www.npmjs.com/package/stylelint-scales) - Enforce scales for numeric values (Pack). - [stylelint-value-no-unknown-custom-properties](https://www.npmjs.com/package/stylelint-value-no-unknown-custom-properties) - Disallow unknown custom properties. -- [stylelint-z-index-value-constraint](https://www.npmjs.com/package/stylelint-z-index-value-constraint) - Specify minimum and maximum constraint value for z-index. - -### Units - -- [stylelint-rem-over-px](https://www.npmjs.com/package/stylelint-rem-over-px) - Enforce `rem` units over `px` units. - -### Uncategorized - -- [@isnotdefined/stylelint-plugin](https://www.npmjs.com/package/@isnotdefined/stylelint-plugin) - Disallow obsolete CSS and enforce unit steps (Pack). ## Task runners