Please consider https://github.com/ijsto/eslint-config instead
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
A set of awesome ESLint + Prettier configs. Makes it easier to work with React, NextJS, Node apps.
This package is intended for use with VS Code, however, can be easily used with any text editors.
- install ESLint config (local or globally)
- configure VS Code
- Install eslint-config-nextjs:
If you are using
yarn
to manage your packages, you can still usenpx
- it will automatically stop the installation and ask if you'd like to install withyarn
just follow the instructions to use Yarn. Make sure NOT to continue withnpx
IF you use Yarn.
npx install-peerdeps --dev eslint-config-nextjs
- Create an
.eslintrc
file in the root of your project's directory. Paste in the following:
{
"extends": ["nextjs"]
}
-
You're done!
-
Now you can manually lint your code by running
npm run lint
and fix all fixable issues withnpm run lint:fix
. You probably want your editor to do this though.
You can avoid the need to do the previous step for each project and install this globally.
- Install eslint-config-nextjs:
npx install-peerdeps --global eslint-config-nextjs
- Create a global
.eslintrc
file on your computer:
- MacOS location:
~/.eslintrc
- Windows location:
C:\Users\you\.eslintrc
Paste in the follow to newly created .eslintrc
:
{
"extends": ["nextjs"]
}
- Install ESLint extension
- In VS Code go to settings (
⌘Cmd + ,
orCtrl + ,
) → type insettings.json
file → click onEdit in settings.json
and paste in the following on the root of the object:
// Run ESLint each time you save a file
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
},
// Disable Prettier for JavaScript and React (but not for HTML, CSS or others in future)
"[javascriptreact]": {
"editor.formatOnSave": false
},
"[javascript]": {
"editor.formatOnSave": false
}
For other editors, you can add the following to your package.json
and run it manually:
Similarly you may use add this to VS Code and run it to iterate over the whole project (note that this may take some seconds or few minutes depending on the size of your project).
"scripts": {
"lint": "eslint .",
"lint:fix": "eslint . --fix",
},
To run fix only React/Next.js files add the following:
"scripts": {
"lint:fix": "eslint --fix --ext .js,.jsx ."
}
Enjoy the package and feel free to contribute! Pull request or suggestions are most welcome!