Profile
Back to NewsBack
GitHub Trending 2 min
Reader Mode
hudochenkov/stylelint-order: A plugin pack of order related linting rules for Stylelint.

hudochenkov/stylelint-order: A plugin pack of order related linting rules for Stylelint.

16 hours ago

stylelint-order

[![npm version][npm-version-img]][npm] [![npm downloads last month][npm-downloads-img]][npm]

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 has limited 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.

[npm-version-img]: https://img.shields.io/npm/v/stylelint-order.svg [npm-downloads-img]: https://img.shields.io/npm/dm/stylelint-order.svg [npm]: https://www.npmjs.com/package/stylelint-order [Stylelint]: https://stylelint.io/ [postcss-sorting]: https://github.com/hudochenkov/postcss-sorting

Chat with me