Skip to content

A plugin pack of order related linting rules for Stylelint.

License

Notifications You must be signed in to change notification settings

hudochenkov/stylelint-order

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7894ba7 · Nov 10, 2024
Apr 16, 2024
Apr 16, 2024
Nov 10, 2024
Apr 17, 2024
Oct 13, 2021
Nov 2, 2016
Mar 12, 2017
Jul 9, 2019
Dec 8, 2023
Jan 1, 2018
Jun 12, 2022
Nov 10, 2024
Apr 17, 2024
Apr 17, 2024
Nov 10, 2024
Nov 10, 2024

Repository files navigation

stylelint-order

npm version npm downloads last month

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

Installation

  1. If you haven't, install Stylelint:
npm install stylelint --save-dev
  1. Install stylelint-order:
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.

{
	"plugins": [
		"stylelint-order"
	],
	"rules": {
		"order/order": [
			"custom-properties",
			"declarations"
		],
		"order/properties-order": [
			"width",
			"height"
		]
	}
}

Rules

Autofixing

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.

Example configs

All these configs have properties-order configured with logical properties groups:

Thanks

properties-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.