eslint-config-sbkonzept
v1.6.0
Published
This package provides our .eslintrc as an extensible shared config.
Downloads
31
Readme
eslint-config-sbkonzept
This package provides our .eslintrc as an extensible shared config.
Quick Start
- Run
yarn add -D sb-konzept/eslint-config-sbkonzept
cat node_modules/eslint-config-sbkonzept/package.json | jq -M .peerDependencies | command sed 's/[\{\},]//g ; s/: /@/g' | xargs yarn add -D prettier-eslint-cli lint-staged husky
- Add to the package.json
{
"scripts": {
"precommit": "lint-staged",
"lint:eslint": "eslint",
"format:prettier": "prettier-eslint --write",
"format:src": "yarn format:prettier 'src/**/*.js'"
},
"eslintConfig": {
"extends": "sbkonzept"
},
"lint-staged": {
"*.js": [
"yarn format:prettier",
"yarn lint:eslint",
"git add"
],
"*.json": [
"yarn format:prettier",
"git add"
]
}
}
Usage
We export three ESLint configurations for your usage.
eslint-config-sbkonzept
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-jsx-a11y
and babel-eslint
.
If you use yarn, run cat node_modules/eslint-config-sbkonzept/package.json | jq .peerDependencies
to list the peer dependencies and versions, then run yarn add --dev <dependency>@<version>
for each listed peer dependency.
- Install the correct versions of each package, which are listed by the command:
cat node_modules/eslint-config-sbkonzept/package.json | jq .peerDependencies
Linux/OSX users can run
yarn add -D sb-konzept/eslint-config-sbkonzept
cat node_modules/eslint-config-sbkonzept/package.json | jq -M .peerDependencies | command sed 's/[\{\},]//g ; s/: /@/g' | xargs yarn add -D
Which produces and runs a command like:
yarn add --dev eslint-config-airbnb eslint@^#.#.# eslint-plugin-jsx-a11y@^#.#.# eslint-plugin-import@^#.#.# eslint-plugin-react@^#.#.# babel-eslint@^#.#.#
- Add
"extends": "sbkonzept"
to your package.json under the keyeslintConfig
{
"eslintConfig": {
"extends": "sbkonzept"
}
}
- Install
prettier-eslint-cli
yarn add --dev prettier-eslint-cli
- Add additional scripts to your package.json
{
"scripts": {
"lint": "eslint src",
"prettify": "prettier-eslint src/**/*.js --write"
}
}
Git-Hooks
- Install
husky
andlint-staged
yarn add -D lint-staged husky
- Add
lint-staged
config to the package.json
{
"lint-staged": {
"*.js": [
"yarn prettify",
"yarn lint",
"git add"
]
}
}
- Add a precommit script to the package.json
{
"scripts": {
"precommit": "lint-staged"
}
}