DockYard standard configuration rules for CSS linting using stylelint.
To see the rules that this config uses, please read the config itself.
npm install stylelint-config-standard --save-dev
npm install stylelint-config-narwin --save-dev
Ember installation utilizes ember-cli-stylelint to provide integrated tests and reporting of stylelint errors. This must be version 0.15.0 or later to support Ember versions 2.13 and up.
npm install stylelint-config-narwin --save-dev
ember install ember-cli-stylelint
The ember-cli-stylelint addon will create a 'stylelint' config file at /.stylelintrc
.
If you've installed stylelint-config-narwin
locally within your project, just set your stylelint
config to:
{
"extends": "stylelint-config-narwin"
}
If you've globally installed stylelint-config-narwin
using the -g
flag, then you'll need to use the absolute path to stylelint-config-narwin
in your config e.g.
{
"extends": "/absolute/path/to/stylelint-config-narwin"
}
If you are setting up a new installation after ember-cli-stylelint
you will update the extends
property from 'stylelint-config-standard' to 'stylelint-config-narwin'. The stylelint-config-narwin
configuration already extends the stylelint-config-standard
configuration that is installed along with ember-cli-stylelint
. You may also add this config to your list of extensions per the documentation.
Simply add a "rules"
key to your config, then add your overrides and additions there.
For example, to change the indentation
to tabs, turn off the number-leading-zero
rule, change the property-no-unknown
rule to use its ignoreAtRules
option and add the unit-whitelist
rule:
{
"extends": "stylelint-config-narwin",
"rules": {
"indentation": "tab",
"number-leading-zero": null,
"property-no-unknown": [ true, {
"ignoreProperties": [
"composes"
]
}],
"unit-whitelist": ["em", "rem", "s"]
}
}
The config is broadly compatible with SugarSS syntax. You will need to turn off the rules that check braces and semicolons, as so:
{
"extends": "stylelint-config-standard",
"rules": {
"block-closing-brace-empty-line-before": null,
"block-closing-brace-newline-after": null,
"block-closing-brace-newline-before": null,
"block-closing-brace-space-before": null,
"block-opening-brace-newline-after": null,
"block-opening-brace-space-after": null,
"block-opening-brace-space-before": null,
"declaration-block-semicolon-newline-after": null,
"declaration-block-semicolon-space-after": null,
"declaration-block-semicolon-space-before": null,
"declaration-block-trailing-semicolon": null
}
}
DockYard, Inc. © 2017