0.0.13 • Published 6 years ago
@digitalrisks/eslint-config v0.0.13
Digital Risks ESLint Config
Usage
- Add this to devDependencies:
@digitalrisks/eslint-config
ESLint
yarn add -D eslintif not already present locally or globallyCreate a
.eslintrc.jsfileExtend the config:
{
"extends": [
"@digitalrisks/eslint-config/eslint"
]
}Full example
A full example .eslintrc.js for a project with babel support:
Dont forget to
npm i -D babel-eslintoryarn add -D babel-eslint
module.exports = {
"root": true,
"parserOptions": {
"parser": "babel-eslint",
"sourceType": "module"
},
"extends": [
"@digitalrisks/eslint-config/eslint"
],
}Stylelint
yarn add -D stylelintif not already present locally or globallyCreate a
.stylelint.jsfileExtend the styleling config:
module.exports = {
extends: [
"@digitalrisks/eslint-config/stylelint",
]
}Prettier
Note, we aren't using prettier on .vue files due the poor formatting on blocks
yarn add -D prettierif not already present locally or globallyCreate a
.prettierrc.jsfileUse settting from this package
const prettier = require('@digitalrisks/eslint-config/prettier')
module.exports = prettierpackage.json scripts
- Set up scripts in packages.json
"scripts": {
"lint:eslint": "eslint --fix",
"lint:all:eslint": "yarn lint:eslint --ext .js,.vue .",
"lint:prettier": "prettier --write --loglevel warn",
"lint:all:prettier": "yarn lint:prettier \"**/*.{json,md}\"",
"lint:stylelint": "stylelint --fix",
"lint:all:stylelint": "yarn lint:stylelint \"src/**/*.{vue,css}\"",
"lint": "run-s lint:all:*"
},yarn add -D npm-run-all
preCommit linting
yarn add -D lint-staged cross-envor if NOT using vue-cliyarn add -D yorkie lint-staged cross-envCreate
lint-staged.config.js
module.exports = {
'*.js': [ 'yarn lint:eslint', 'git add' ],
'{!(package)*.json,*.code-snippets,.!(browserslist)*rc}': [ 'yarn lint:prettier --parser json', 'git add' ],
'package.json': [ 'yarn lint:prettier', 'git add' ],
'*.vue': [ 'yarn lint:eslint', 'git add' ],
'*.css': [ 'yarn lint:stylelint', 'git add' ],
// '*.md': ['yarn lint:markdownlint', 'yarn lint:prettier', 'git add' ],
}- Add
gitHooktopackage.json
"gitHooks": {
"pre-commit": "cross-env PRE_COMMIT=true lint-staged"
},Additional Notes
Setup inspired by @nuxtjs/eslint-config & eslint-config-standard