A plugin pack of order-related linting rules for Stylelint. Every rule supports autofixing (stylelint --fix).
npm install stylelint --save-dev
stylelint-order:npm install stylelint-order --save-dev
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.
{
"plugins": [
"stylelint-order"
],
"rules": {
"order/order": [
"custom-properties",
"declarations"
],
"order/properties-order": [
"width",
"height"
]
}
}
order: Specify the order of content within declaration blocks.properties-order: Specify the order of properties within declaration blocks.properties-alphabetical-order: Specify the alphabetical order of properties within declaration blocks.Every rule supports autofixing with stylelint --fix. postcss-sorting is used internally for order autofixing.
Automatic sorting has some limitations that are described for every rule, if any. Please, take a look at how comments are handled by postcss-sorting.
CSS-in-JS styles with template interpolation could be ignored by autofixing to avoid style corruption.
Autofixing in Less syntax may work but isn't officially supported.
All these configs have properties-order configured with logical properties groups:
stylelint-config-idiomatic-orderstylelint-config-hudochenkov/orderstylelint-config-recess-orderstylelint-config-property-sort-order-smacssstylelint-config-clean-orderproperties-order and properties-alphabetical-order code and README were based on the declaration-block-properties-order rule which was a core rule prior to Stylelint 8.0.0.