Skip to content

pro-vision/stylelint-config-pv

Repository files navigation

@pro-vision/stylelint-config-pv

This package provides pro!vision's Stylelint configuration as an extensible shared config. Most rules are inherited from stylelint-config-standard and stylelint-config-standard-scss, it also follows the Idiomatic CSS for ordering properties .

Installation

npm i @pro-vision/stylelint-config-pv --save-dev

Prerequisite

You obviously need stylelint installed. If using the prettier rules, it is also expected that prettier is already installed.

@pro-vision/stylelint-config-pv has all of its needed stylelint plugins as it's dependencies, in general you don't have to declare them. But if you want to update these dependencies or there is an issue due common dependencies with some of your other third party npm dependencies, then install these manually:

npm i stylelint-config-clean-order stylelint-config-standard stylelint-config-standard-scss stylelint-declaration-strict-value stylelint-order stylelint-prettier stylelint-scss --save-dev

Usage

We export Five configurations for usage in projects.

All

Our default export contains all of our Stylelint rules, including SCSS plugins, order related rules/plugins and configuration for prettier integration.

Add an "extends": array to your .stylelintrc:

{
  "extends": [
    "@pro-vision/stylelint-config-pv"
  ],
  "rules": {
    // you can overwrite individual rules here
  }
}

Plain CSS

Suited fo plain css file. Extends stylelint-config-standard rule set.

(This does not include the order module. Which can be added to the extends list if desired.)

{
  "extends": [
    "@pro-vision/stylelint-config-pv/plain-css"
  ],
  "rules": {
    // you can overwrite individual rules here
  }
}

SCSS

Rules for SCSS code. This includes the plain-css rules. And stylelint-config-standard-scss with some modification.

{
  "extends": [
    "@pro-vision/stylelint-config-pv/scss"
  ],
  "rules": {
    // you can overwrite individual rules here
  }
}

Or use as

{
  "extends": [
    "@pro-vision/stylelint-config-pv/scss",
    "@pro-vision/stylelint-config-pv/order",
  ],
  "rules": {
    // you can overwrite individual rules here
  }
}

for i.e. all rules except prettier;

Order

Adds the stylelint-order plugin with a rule set for a specific order of content.

{
  "extends": [
    "@pro-vision/stylelint-config-pv/order"
  ],
  "rules": {
    // you can overwrite individual rules here
  }
}

Prettier

Enables/Disables prettier related rules. Expects prettier to have been installed

{
  "extends": [
    "@pro-vision/stylelint-config-pv/prettier"
  ],
  "rules": {
    // you can overwrite individual rules here
  }
}

For information about individual rules see

Text editor integration

There are a Visual Studio Code plugin and a Sublime Linter plugin for Stylelint.

According to the documentation current versions of WebStorm also support Stylelint.

Version 2016.3 onwards has built-in support for stylelint.

Furthermore there is support in IntelliJ Ultimate.