A React project model with Eslint and prettier config
module.exports = {
env: {
browser: true,
es2021: true,
node: true,
},
settings: {
react: {
version: 'detect',
},
'import/resolver': {
node: {
extensions: ['.js', '.jsx'],
},
},
},
extends: [
'eslint:recommended',
'plugin:react/recommended',
'plugin:prettier/recommended',
'plugin:import/errors',
'plugin:import/warnings',
],
parser: '@babel/eslint-parser',
parserOptions: {
ecmaFeatures: {
jsx: true,
},
babelOptions: {
presets: ['@babel/preset-react'],
},
ecmaVersion: 'latest',
requireConfigFile: false,
sourceType: 'module',
},
plugins: ['react', 'prettier', 'react-hooks'],
rules: {
'prettier/prettier': 2,
'react/react-in-jsx-scope': 0,
'import/prefer-default-export': 0,
'react-hooks/rules-of-hooks': 'error',
'react-hooks/exhaustive-deps': 'warn',
},
};