These are my settings for using ESLint and Prettier happily together for a Node environment.
It includes the following:
- My base config eslint-config-roboleary-base config for a core collection of rules.
- The eslint-plugin-node for a set of rules for node.
- The eslint-config-prettier config to turn off the ESLint rules that conflict or are unnecessary when using Prettier. Ensure this is the last config included.
-
Install this package, ESLint (peer dependency) and Prettier (peer dependency) as devDependencies with the command
npm i --save-dev eslint prettier eslint-config-node-roboleary
. -
Create an eslint config file in the root of your project directory e.g. .eslintrc. Add the following:
{ "extends": ["eslint-config-node-roboleary"] }
Alternatively, you can put a reference to the config in your package.json under the property
eslintConfig
. -
You can add scripts to your package.json to lint, fix, and format your code from the command-line.
{ "scripts": { "lint": "eslint .", "lint:fix": "npm run lint -- --fix", "format": "prettier src test --check", "format:fix": "npm run prettier -- --write", }, }