This package provides eslint
config for the reactjs
projects.
Only support the new Eslint flat config.
-
Prettier Config:
Prettier
config for theFront-end
projects. -
Prettier Config:
Prettier
config for theSvelte
projects. -
Eslint Config Base:
Eslint
config for theJavascript
projects. -
Eslint Config Typescript:
Eslint
config for theTypescript
projects. -
Eslint Config React JS:
Eslint
config for theReact JS
projects. -
Eslint Config React TS:
Eslint
config for theReact TS
projects. -
Eslint Config Next JS:
Eslint
config for theNext JS
projects. -
Eslint Config Next TS:
Eslint
config for theNext TS
projects. -
Eslint Config Lit JS:
Eslint
config for theLit JS
projects. -
Eslint Config Lit TS:
Eslint
config for theLit TS
projects. -
Eslint Config Node ESM:
Eslint
config for theNode Esm
projects. -
Eslint Config Svelte JS:
Eslint
config for theSvelte
projects. -
Eslint Config Svelte TS:
Eslint
config for theSvelte TS
projects.
and more to come.
pnpm add -D @febase/eslint-config-react eslint
2. Add config to your eslint.config.js
. Please read more about Eslint Flat Config.
import { config } from '@febase/eslint-config-react';
export default [...config];
If you only want to use standalone react config
.
import { reactConfig } from '@febase/eslint-config-react';
export default [reactConfig];
{
"scripts": {
"lint": "eslint \"src/**/*.{js,jsx}\"",
"lint:fix": "pnpm lint"
}
}
In root your project's folder. Create .vscode
folder with structure:
.vscode
- settings.json
{
"eslint.experimental.useFlatConfig": true,
// if mono-repo please remove comment of the below line.
// "eslint.workingDirectories": [{ "pattern": "./apps/*/" }, { "pattern": "./packages/*/" }],
"eslint.options": {
"overrideConfigFile": "eslint.config.js"
},
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
},
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true
}
- Install packages and global setup
husky
,lint-staged
.
pnpm add -D husky lint-staged
pnpm dlx husky install
pnpm pkg set scripts.prepare="husky install"
pnpm dlx husky add .husky/pre-commit "pnpm dlx lint-staged"
- Add the following to your
package.json
:
{
"lint-staged": {
"*.{js,jsx,ts,tsx}": ["pnpm format", "pnpm lint:fix"],
"*.{json,css,md,html}": ["pnpm format"]
}
}