One package to lint and prettify them all
This config includes eslint, prettier and all relevant plugins and configs to make it work with a single package installation.
Includes:
eslintbabel-eslinteslint-config-airbnbeslint-config-prettiereslint-plugin-importeslint-plugin-jesteslint-plugin-jsx-a11yeslint-plugin-prettiereslint-plugin-reacteslint-plugin-react-hooksprettier
- Install the plugin (preferrably an
exactversion withEflag):
yarn add -DE eslint-config-fast-lint-prettify- Create an
.eslintrcfile in your project root and add:
{
"extends": ["fast-lint-prettify"]
}- Create a
.prettierrc.jsfile in your project root and add:
const prettier = require('eslint-config-fast-lint-prettify/prettier');
// You can also overwrite some keys in this config
module.exports = prettier;Alternatively, in your package.json file add the following key:
{
"prettier": "eslint-config-fast-lint-prettify/prettier"
}- Also recommended to add an
.editorconfigfile at the project root:
root = true
[*]
indent_style = tab
indent_size = 2
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
-
If you're using VSCode, you might want to enable "Format on save" from workspace settings to automatically run prettier on save.
-
This package is meant to be used as an opinionated standalone. It includes both
eslintandprettier. With these you can for example use them inscriptsinpackage.json:
{
"scripts": {
"lint": "yarn eslint ."
}
}It's based on eslint-config-airbnb with some tweaks. You can override or add your own rules in your own .eslintrc file. For example:
{
"extends": ["fast-lint-prettify"],
"rules": {
// your own rules here
}
}You can also specify a node or browser environment which enables some linting rules, for example window object on browser, etc.
{
"extends": ["fast-lint-prettify"],
"rules": {
// your own rules here
},
"env": {
// generally you only need one
"browser": true,
"node": true
}
}