🎨 How plural paints its code;
Our default export contains all of our ESLint rules, including ECMAScript 6+ and React. It requires eslint
, eslint-plugin-import
, eslint-plugin-react
, eslint-plugin-react-hooks
, eslint-plugin-react-hooks-docs
, eslint-plugin-jsx-a11y
and eslint-plugin-react-perf
. If you don't need React, see base entry point.
If using yarn, you can also use the shortcut described above if you have npm 5+ installed on your machine, as the command will detect that you are using yarn and will act accordingly. Otherwise, run npm info "eslint-config-plural@latest" peerDependencies to list the peer dependencies and versions, then run yarn add --dev @ for each listed peer dependency.
- Install the correct versions of each package, which are listed by the command:
npm info "eslint-config-plural@latest" peerDependencies
If using npm 5+, use this shortcut
npx install-peerdeps --dev eslint-config-plural
If using npm < 5, Linux/OSX users can run
(
export PKG=eslint-config-plural;
npm info "$PKG@latest" peerDependencies --json | command sed 's/[\{\},]//g ; s/: /@/g' | xargs npm install --save-dev "$PKG@latest"
)
Which produces and runs a command like:
npm install --save-dev eslint-config-plural eslint@^#.#.# eslint-plugin-jsx-a11y@^#.#.# eslint-plugin-import@^#.#.# eslint-plugin-react@^#.#.#
If using npm < 5, Windows users can either install all the peer dependencies manually, or use the install-peerdeps cli tool.
npm install -g install-peerdeps
install-peerdeps --dev eslint-config-plural
The cli will produce and run a command like:
npm install --save-dev eslint-config-plural eslint@^#.#.# eslint-plugin-jsx-a11y@^#.#.# eslint-plugin-import@^#.#.# eslint-plugin-react@^#.#.#
- Add
"extends": "plural"
to your .eslintrc
Our default export contains all of our ESLint rules, including ECMAScript 6+ without React. It requires eslint and eslint-plugin-import.
- follow the steps above
- Add
"extends": "plural/base"
to your .eslintrc
To extend Typescript configuration you should extend the .tsconfig.json
file in your tsconfig.json
.
{
"extends": "./node_modules/eslint-config-plural/tsconfig",
"compilerOptions": {
"strictNullChecks": false
}
}
eslint-config-plural extends eslint-config-airbnb or eslint-config-airbnb-base style guide, appending our rules.
Check the changelog for version details.
Consider adding test cases if you're making complicated rules changes, like anything involving regexes. Perhaps in a distant future, we could use literate programming to structure our README as test cases for our .eslintrc?
You can run tests with npm test
.
You can make sure this module lints with itself using npm run lint
.
This Package is being maintained by plural
Built with ❤️ in California