Pluggable ESLint config for React Native that you can import, extend and override
React Native: Safety Checks and Best Practices with a bias toward code concision / brevity
Usage
In your js project directory:
npm install --save-dev eslint-config-react-native
And in your .eslintrc.yaml
:
extends:
- react-native
Alternatively, in your .eslintrc.js
or .eslintrc.json
:
{
"extends": ["react-native"]
}
To add a git-hook to your commits, consider using husky
npm install --save-dev husky
And in your package.json
:
"scripts": {
"precommit": "eslint ."
}
Config
This config is biased and opinionated, and errs on the side of too many rules instead of too few. Think of this as a superset of your repo's lint config, and discard what you don't like in it. It's easy to override and disable the rules you find inconvenient.
env:
browser: true
enables browser features and global variables
plugins:
- react
- react-native
provides React, JSX and React Native specific rules
extends:
- esnext
- plugin:react/recommended
enables jsx
parsing, includes config and rules from eslint-config-esnext and the following react-specific recommended rules:
rules:
selected from here, configured to: