Awesome
ESLint Index
CLI for finding and managing rules in ESLint config files
List all the rules!
Then count them, or create a pretty table!
Installation
npm install eslint-index --save-dev
Usage
eslint-index path/to/.eslintrc [options]
This package is intended to be used as a local utility.
It needs both eslint
and the eslint-plugins
referenced in the .eslintrc.*
config file, to be installed alongside it.
Using it as a global utility will throw an error if eslint
and the eslint-plugins
referenced in the .eslintrc.*
config file are not installed globally.
It is recommended that you use it within your package.json
scripts:
"scripts": {
"list-rules": "eslint-index .eslintrc",
"count-rules": "eslint-index .eslintrc --format number",
"table-rules": "eslint-index .eslintrc --format table",
"list-rules-with-docs": "eslint-index .eslintrc --docs",
"list-eslint-rules": "eslint-index .eslintrc --groups eslint",
"list-disabled-rules": "eslint-index .eslintrc --status omitted off"
}
Alternatively, you can add ./node_modules/.bin
to your $PATH
.
This will allow you to use any node binaries within your project:
» cd some-project-with-eslint-index-installed
» which eslint-index
./node_modules/.bin/eslint-index
» eslint-index .eslintrc --format table
┌──────────┬─────────┬─────────┬─────────┬─────────┬─────────┐
│ │ total │ omitted │ off │ warn │ error │
├──────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ eslint │ 233 │ 0 │ 29 │ 2 │ 202 │
├──────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ react │ 53 │ 4 │ 0 │ 0 │ 49 │
└──────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
Options
Option | Alias | Description | Arg Type | Arg Options |
---|---|---|---|---|
--help | -h | Display help | Boolean | N/A |
--docs | -d | Display docs alongside rules | Boolean | N/A |
--format | -f | Format rules | String | `list |
--status | -s | Filter rules by status | Array<String> | `omitted |
--groups | -g | Filter rules by group/plugin | Array<String> | `eslint |
--include | -i | Filter rules by id | Array<String> | rule-id-one rule-id-two |
--exclude | -e | Reject rules by id | Array<String> | rule-id-one rule-id-two |
Examples
eslint-index .eslintrc --format table
eslint-index .eslintrc --format number
eslint-index .eslintrc --status omitted off
eslint-index .eslintrc --status warn error
eslint-index .eslintrc --groups eslint react
eslint-index .eslintrc --groups eslint --status warn error
eslint-index .eslintrc --groups eslint --status warn error --format number
eslint-index .eslintrc --include semi curly
eslint-index .eslintrc --exclude semi curly
eslint-index .eslintrc --docs
eslint-index .eslintrc --groups eslint react --docs
Author
Matthew Wagerfield @wagerfield