node package manager
Painless code sharing. npm Orgs help your team discover, share, and reuse code. Create a free org »

stylelint-order

stylelint-order Build Status npm version npm downloads last month Dependency status

A plugin pack of order related linting rules for stylelint. Every rule support autofixing (stylelint --fix).

Installation

First, install stylelint:

npm install stylelint --save-dev

Then install plugin:

npm install stylelint-order --save-dev

Usage

Add stylelint-order to your stylelint config plugins array, then add rules you need to the rules list. All rules from stylelint-order need to be namespaced with order.

Like so:

// .stylelintrc
{
    "plugins": [
        "stylelint-order"
    ],
    "rules": {
        // ...
        "order/order": [
            "custom-properties",
            "declarations"
        ],
        "order/properties-alphabetical-order": true
        // ...
    }
}

List of rules

Autofixing

Every rule support autofixing (stylelint --fix). postcss-sorting is using internally for order autofixing.

Automatic sortings has some limitation, which are described for every rule if any. Please, take a look at how comments are handled by postcss-sorting.

Autofixing is enabled by default if it's enabled in stylelint configuration. Autofixing can be disabled on per rule basis using disableFix: true secondary option. E. g.:

{
    "rules": {
        "order/order": [
            [
                "custom-properties",
                "declarations"
            ],
            {
                "disableFix": true
            }
        ]
    }
}

Less isn't supported. It might work, but haven't tested.

Thanks

properties-order and properties-alphabetical-order code and readme are based on declaration-block-properties-order rule which was a stylelint's core rule prior stylelint 8.0.0.