stylelint-config-narwin
DockYard standard configuration rules for CSS linting using stylelint.
To see the rules that this config uses, please read the config itself.
Installation
npm install stylelint-config-standard --save-dev
npm install stylelint-config-narwin --save-dev
Ember-specific Installation
Ember installation utilizes ember-cli-stylelint to provide integrated tests and reporting of stylelint errors.
NOTE
Until a release is made of ember-cli-stylelint that includes the fixes from May 26 or later, it must be installed from at least commit a421ca6 or later in order to work properly on Ember versions on or after 2.13.
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
.
Usage
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.
Additional Ember configuration
Note
Configuration of stylelint is per ember-cli-stylelint configuration. For example, to update the linter for CSS instead of the default SCSS add the following to your ember-cli-build.js
:
....
module.exports = function(defaults) {
var app = new EmberApp(defaults, {
stylelint: {
linterConfig: {
syntax: 'css'
}
}
});
....
Extending the config
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
}
}
Legal
DockYard, Inc. © 2017
@dockyard
Licensed under the MIT license