{ "root": true, "parser": "babel-eslint", "plugins": [ "react" ], "extends": "eslint:recommended", "rules": { "strict": 0, "quotes": [0, "single"], "curly": [1, "multi-line"], "camelcase": 0, "comma-dangle": 0, "dot-notation": 0, "jsx-quotes": [1, "prefer-double"], // use double quotes in jsx "no-alert": 2, "no-console": 2, "no-debugger": 2, "no-use-before-define": [1, "nofunc"], "no-underscore-dangle": 0, "no-unused-vars": [1, { "argsIgnorePattern": "^((prev|next)(State|Props)|e|_.*)$", "vars": "local", "varsIgnorePattern": "(debug|^_)" }], "new-cap": 0, "prefer-const": 1, "react/jsx-boolean-value": [1, "always"], // forces `var={true}` instead of `var` "react/jsx-curly-spacing": [1, "never"], // don't allow `var={ 1 }` "react/jsx-no-duplicate-props": 1, // prevent "react/jsx-no-undef": 2, // warn when using undefined components (why is this not default?) "react/jsx-uses-react": 1, // marks `React` as consumed by any jsx el (squelched unused) "react/jsx-uses-vars": 1, // marks any vars in jsx as used "react/jsx-wrap-multilines": 1, // require parens around multiline jsx "semi": [1, "always"] }, env: { "browser": true, "node": true, "es6": true }, "ecmaFeatures": { "jsx": true }, "globals": { // For Flow "$PropertyType", "$Exact" } }