An ESLint shareable config for very meticulous people
An ESLint shareable config for meticulous people.
⚠️ This config does not contain rules for code style. We recommend you to use prettier.
If you have any question about a rule or want to discuss about it, please open an issue.
npm i -D eslint eslint-config-i-am-meticulous
Note that the default config require eslint-plugin-import
eslint:recommended
.package.json
or .eslintrc
).babel-eslint
if you use babel with fresh ES stages.Add to your eslint configuration (here, in package.json
)
{
"eslintConfig": {
"extends": "eslint-config-i-am-meticulous"
}
}
To use the meticulous flow rule set (that extends the default one):
This rule set require babel-eslint.
npm i -D eslint babel-eslint eslint-plugin-flowtype eslint-config-i-am-meticulous
{
"eslintConfig": {
"parser": "babel-eslint",
"extends": "eslint-config-i-am-meticulous/flow"
}
}
To use the meticulous React rule set (that extends the default one):
npm i -D eslint eslint-plugin-react eslint-config-i-am-meticulous
{
"eslintConfig": {
"extends": "eslint-config-i-am-meticulous/react"
}
}
To use the meticulous React + flow rule set (that extends the default one):
This rule set require babel-eslint.
npm i -D eslint babel-eslint eslint-plugin-flowtype eslint-config-i-am-meticulous
{
"eslintConfig": {
"parser": "babel-eslint",
"extends": "eslint-config-i-am-meticulous/react-flow"
}
}
This rule set is a combination of react and flow rule sets but add a tiny change to support props and state property initializers to be added at the top of classes (react/sort-comp default configuration does not allow that).
To use the meticulous React-Native rule set (that extends the default React and Flow ones):
npm i -D eslint eslint-plugin-react eslint-plugin-react-native eslint-plugin-flowtype eslint-config-i-am-meticulous
{
"eslintConfig": {
"extends": "eslint-config-i-am-meticulous/react-native"
}
}
To use the meticulous ES5 rule set (that extends the default one):
npm i -D eslint eslint-plugin-react eslint-config-i-am-meticulous
{
"eslintConfig": {
"extends": "eslint-config-i-am-meticulous/es5"
}
}
$ npm test
).