Skip to content
This repository has been archived by the owner on May 31, 2022. It is now read-only.

An ESLint shareable config for very meticulous people

License

Notifications You must be signed in to change notification settings

MoOx/eslint-config-i-am-meticulous

Repository files navigation

eslint-config-i-am-meticulous

An ESLint shareable config for meticulous people.

Travis (Unix) Build Badge

Repo on GitHub Repo on GitLab Repo on BitBucket

⚠️ 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.

Install

npm i -D eslint eslint-config-i-am-meticulous

Note that the default config require eslint-plugin-import

Usage

Notes

  • This config extends eslint:recommended.
  • You will need to adjust configuration syntax depending on your configuration location (package.json or .eslintrc).
  • You might need to use babel-eslint if you use babel with fresh ES stages.

Meticulous modern ES

Add to your eslint configuration (here, in package.json)

{
  "eslintConfig": {
    "extends": "eslint-config-i-am-meticulous"
  }
}

Flow

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"
  }
}

React

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"
  }
}

React + Flow

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).

React-Native

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"
  }
}

Old ES5

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"
  }
}

CONTRIBUTING

  • ⇄ Pull requests and ★ Stars are always welcome.
  • For bugs and feature requests, please create an issue.
  • Pull requests must be accompanied by passing automated tests ($ npm test).