https://github.com/inerciacreativa/stylelint-ext-webpack-plugin
A webpack plugin to lint your CSS code using stylelint
https://github.com/inerciacreativa/stylelint-ext-webpack-plugin
css plugin stylelint webpack webpack-plugin
Last synced: 6 months ago
JSON representation
A webpack plugin to lint your CSS code using stylelint
- Host: GitHub
- URL: https://github.com/inerciacreativa/stylelint-ext-webpack-plugin
- Owner: inerciacreativa
- License: mit
- Created: 2019-05-06T09:49:25.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-05-06T09:59:25.000Z (about 7 years ago)
- Last Synced: 2025-09-14T06:58:43.547Z (10 months ago)
- Topics: css, plugin, stylelint, webpack, webpack-plugin
- Language: JavaScript
- Homepage:
- Size: 6.84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# stylelint-ext-webpack-plugin
A Stylelint plugin for webpack
## Requirements
This module requires a minimum of Node v6.9.0 and webpack v3.11.0 or 4.4.0.
## Differences With stylelint-loader
Both [`stylelint-loader`](https://github.com/adrianhall/stylelint-loader) and
this module have their uses. `stylelint-loader` lints the files you `require`
(or the ones you define as an `entry` in your `webpack` config). However,
`@imports` in files are not followed, meaning only the main file for each
`require/entry` is linted.
`stylelint-ext-webpack-plugin` allows defining a
[glob pattern](https://en.wikipedia.org/wiki/Glob_(programming)) matching the
configuration and use of `stylelint`.
## Getting Started
To begin, you'll need to install `stylelint-ext-webpack-plugin`:
```console
$ npm install stylelint-ext-webpack-plugin --save-dev
```
Then add the plugin to your `webpack` config. For example:
**file.ext**
```js
import file from 'file.ext';
```
```js
// webpack.config.js
const StyleLintPlugin = require('stylelint-ext-webpack-plugin');
module.exports = {
// ...
plugins: [
new StyleLintPlugin(options),
],
// ...
}
```
And run `webpack` via your preferred method.
## Options
See stylelint's [options](http://stylelint.io/user-guide/node-api/#options) for
the complete list of options available. These options are passed through to the
`stylelint` directly.
### `configFile`
Type: `String`
Default: `undefined`
Specify the config file location to be used by `stylelint`.
_Note: By default this is
[handled by `stylelint`](http://stylelint.io/user-guide/configuration/) via
cosmiconfig._
### `context`
Type: `String`
Default: `compiler.context`
A `String` indicating the root of your `SCSS` files.
### `emitErrors`
Type: `Boolean`
Default: `true`
If true, pipes `stylelint` error severity messages to the `webpack` compiler's
error message handler.
_Note: When this property is disabled all `stylelint` messages are piped to the
`webpack` compiler's warning message handler._
### `failOnError`
Type: `Boolean`
Default: `false`
If true, throws a fatal error in the global build process. This will end the
build process on any `stylelint` error.
### `files`
Type: `String|Array[String]`
Default: `'**/*.s?(a|c)ss'`
Specify the glob pattern for finding files. Must be relative to `options.context`.
### `formatter`
Type: `Object`
Default: `require('stylelint').formatters.string`
Specify a custom formatter to format errors printed to the console.
### `lintDirtyModulesOnly`
Type: `Boolean`
Default: `false`
Lint only changed files, skip lint on start.
### `syntax`
Type: `String`
Default: `undefined`
See the `styelint`
[user guide](https://stylelint.io/user-guide/node-api/#syntax) for more info.
e.g. use `'scss'` to lint .scss files.
## Error Reporting
By default the plugin will dump full reporting of errors. Set `failOnError` to
true if you want `webpack` build process breaking with any stylelint error. You
can use the `quiet` option to avoid error output to the console.
## Acknowledgement
This project is a fork of [stylelint-webpack-plugin](https://github.com/webpack-contrib/stylelint-webpack-plugin) that allows the use of the latest versions of stylelint.
## License
#### [MIT](./LICENSE.md)