1.2.0-dev.2 • Published 10 months ago
@goparrot/eslint-config v1.2.0-dev.2
How to use
npm install --save-dev @goparrot/eslint-config
Installed libraries out of the box:
- eslint
- @typescript-eslint/parser
- @typescript-eslint/eslint-plugin
- eslint-import-resolver-typescript
- eslint-plugin-import
- prettier
- eslint-config-prettier
- eslint-plugin-prettier
Choose the right set of rules
Create the .eslintrc.js
file in the directory next to package.json
module.exports = {
extends: ["@goparrot/eslint-config/recommended"],
parserOptions: {
project: "./tsconfig.eslint.json",
},
rules: {
// rules to override.
},
};
You should create the tsconfig.eslint.json
in your project.
See the examples of tsconfig.json and tsconfig.eslint.json in this repository.
Choose the right set of rules
Common recommended rules:
extends: ['@goparrot/eslint-config/recommended']
Less strict rules:
extends: ['@goparrot/eslint-config/recommended', '@goparrot/eslint-config/less-strict']
For a frontend project with react
and jsx
:
npm install --save-dev eslint-plugin-react eslint-plugin-react-hooks
extends: ['@goparrot/eslint-config/recommended', '@goparrot/eslint-config/react', '@goparrot/eslint-config/jsx']
Create the .eslintignore
file in the directory next to .eslintrc.js
# you must any dot `.file` which you want to ignore
# by default we don't ignore hidden `!.*.js` and `!.*.json` files in the root directory (for example: `.commitlintrc.js`, .`prettierrc.json`)
# example: if you don't want to ignore these files
!.eslintrc.js
# don't forget to add here all ignored folders or files from .gitignore that you don't need to check with a linter (there is no magic)
# by default we ignore `node_modules` and `.yalc` folders in the root directory
# example: if you want to ignore these files or directories
dist
coverage
test-reports
.nyc_output
.bit
add npm scripts
{
"scripts": {
"prettier": "npm run prettier:base -- '**/**.+(md)'",
"prettier:base": "prettier --ignore-path .eslintignore --write",
"format": "npm run prettier && npm run lint -- --fix",
"format:base": "npm run lint:base -- --fix",
"format:staged": "git add . && lint-staged --allow-empty -q",
"lint": "npm run lint:base -- './**/**.{ts,tsx,js,jsx,json}'",
"lint:base": "npm run lint:config:check && eslint",
"lint:config:check": "eslint-config-prettier src/index.ts",
"typecheck": "tsc -p tsconfig.json --noEmit"
}
}
Make sure to
1.2.0-dev.0
10 months ago
1.2.0-dev.2
10 months ago
1.2.0-dev.1
10 months ago
1.2.0-next.1
10 months ago
1.2.0-next.0
10 months ago
1.2.0
1 year ago
1.1.3-next.0
1 year ago
1.1.2-dev.719.2
1 year ago
1.1.2
2 years ago
1.1.2-dev.1
2 years ago
1.1.1
2 years ago
1.1.0
2 years ago
1.0.4-dev.0
2 years ago
1.0.3-dev.0
3 years ago
1.0.4
3 years ago
1.0.3-dev.1
3 years ago
1.0.3-dev.2
3 years ago
1.0.2
4 years ago
1.0.3
4 years ago
1.0.1
4 years ago
1.0.0
4 years ago
1.1.0-dev.6
4 years ago