Skip to content

Instantly share code, notes, and snippets.

@edspencer
Created March 1, 2016 19:25
Show Gist options
  • Save edspencer/1ef8d41a040548d8af85 to your computer and use it in GitHub Desktop.
Save edspencer/1ef8d41a040548d8af85 to your computer and use it in GitHub Desktop.
{
"parser": "babel-eslint",
"env": {
"browser": true,
"node": true,
"worker": true,
"es6": true
},
"globals": {},
"plugins": [
"babel",
"react"
],
"ecmaFeatures": {
// Explicitly enable to provide parser support
"arrowFunctions": true,
"binaryLiterals": true,
"blockBindings": true,
"classes": true,
"defaultParams": true,
"destructuring": true,
"forOf": true,
"generators": true,
"modules": true,
"objectLiteralComputedProperties": true,
"objectLiteralDuplicateProperties": true,
"objectLiteralShorthandMethods": true,
"objectLiteralShorthandProperties": true,
"octalLiterals": true,
"regexUFlag": true,
"regexYFlag": true,
"restParams": true,
"spread": true,
"superInFunctions": true,
"templateStrings": true,
"unicodeCodePointEscapes": true,
"globalReturn": true,
"jsx": true,
"experimentalObjectRestSpread": true
},
"rules": {
// Possible Errors
"comma-dangle": [2, "never"],
"no-cond-assign": [2, "except-parens"],
"no-console": [1],
"no-constant-condition": [2],
"no-debugger": [1],
"no-dupe-args": [2],
"no-dupe-keys": [2],
"no-duplicate-case": [2],
"no-empty-character-class": [2],
"no-empty": [2],
"no-ex-assign": [2],
"no-extra-boolean-cast": [2],
"no-extra-parens": [2, "functions"],
"no-extra-semi": [2],
"no-func-assign": [2],
"no-inner-declarations": [2, "functions"],
"no-invalid-regexp": [2],
"no-irregular-whitespace": [2],
"no-negated-in-lhs": [2],
"no-obj-calls": [2],
"no-regex-spaces": [2],
"no-sparse-arrays": [2],
"no-unreachable": [2],
"use-isnan": [2],
"valid-typeof": [2],
"no-unexpected-multiline": [2],
// Best Practices
"block-scoped-var": [2],
"curly": [2, "all"],
"dot-notation": [
2,
{
"allowKeywords": true,
"allowPattern": "^[a-z]+((_|\\-).*?[a-z]+)+$"
}
],
"dot-location": [2, "property"],
"eqeqeq": [2],
"guard-for-in": [2],
"no-alert": [2],
"no-caller": [2],
"no-div-regex": [2],
"no-else-return": [2],
"no-empty-label": [2],
"no-eq-null": [2],
"no-eval": [2],
"no-extend-native": [
2,
{
"exceptions": []
}
],
"no-extra-bind": [2],
"no-fallthrough": [2],
"no-floating-decimal": [2],
"no-implicit-coercion": [2],
"no-implied-eval": [2],
"no-invalid-this": [2],
"no-iterator": [2],
"no-labels": [2],
"no-lone-blocks": [2],
"no-loop-func": [2],
"no-multi-str": [2],
"no-native-reassign": [2],
"no-new-func": [2],
"no-new-wrappers": [2],
"no-new": [2],
"no-octal-escape": [2],
"no-octal": [2],
"no-param-reassign": [2, { "props": false }],
"no-process-env": [2],
"no-proto": [2],
"no-redeclare": [2, { "builtinGlobals": true } ],
"no-return-assign": [2],
"no-script-url": [2],
"no-self-compare": [2],
"no-sequences": [2],
"no-throw-literal": [2],
"no-unused-expressions": [2],
"no-useless-call": [2],
"no-useless-concat": [2],
"no-void": [2],
"no-with": [2],
"radix": [2],
"vars-on-top": [2],
"wrap-iife": [2, "inside"],
"yoda": [2],
// Strict Mode
"strict": [2, "never"],
// Variables
"no-catch-shadow": [2],
"no-delete-var": [2],
"no-shadow-restricted-names": [2],
"no-shadow": [2],
"no-undef-init": [2],
"no-undef": [2],
"no-undefined": [2],
"no-unused-vars": [2, {
"vars": "local",
"args": "after-used"
}],
"no-use-before-define": [2],
// Stylistic Issues
"array-bracket-spacing": [2, "always"],
"block-spacing": [2, "always"],
"brace-style": [2, "1tbs"],
"camelcase": [2, { "properties": "always" }],
"comma-spacing": [2, {"before": false, "after": true}],
"comma-style": [2, "last"],
"computed-property-spacing": [2, "never"],
"eol-last": [2],
"id-length": [2, {"min": 2, "properties": "always", "exceptions": ["x", "y", "z"]}],
"indent": [
2,
4,
{
"VariableDeclarator": {
"let": 1,
"var": 1,
"const": 1
}
}
],
"lines-around-comment": [
2,
{
"beforeBlockComment": true,
"afterBlockComment": false,
"beforeLineComment": false,
"afterLineComment": false,
"allowBlockStart": true,
"allowBlockEnd": true
}
],
"linebreak-style": [2, "unix"],
"new-cap": [
2,
{
"newIsCap": true,
"capIsNew": true,
"newIsCapExceptions": [
"constructor"
],
"capIsNewExceptions": [
// Defaults (like Primitives' names) still applied
]
}
],
"new-parens": [2],
"newline-after-var": [2, "always"],
"no-array-constructor": [2],
"no-lonely-if": [2],
"no-mixed-spaces-and-tabs": [2],
"no-multiple-empty-lines": [2, {"max": 2}],
"no-nested-ternary": [2],
"no-spaced-func": [2],
"no-trailing-spaces": [2, {"skipBlankLines": false}],
"no-unneeded-ternary": [2],
"one-var": [2, "never"],
"operator-linebreak": [2, "after"],
"padded-blocks": [2, "never"],
"quote-props": [2, "as-needed"],
"semi-spacing": [2, {"before": false, "after": true}],
"semi": [2, "always"],
"space-after-keywords": [2],
"space-before-blocks": [2],
"space-before-function-paren": [2, "never"],
"space-in-parens": [2, "never"],
"space-infix-ops": [2],
"space-return-throw-case": [2],
"space-unary-ops": [2, { "words": true, "nonwords": false }],
"spaced-comment": [2, "always", { "exceptions": ["*"] }],
"wrap-regex": [2],
// ECMAScript 6
"arrow-spacing": [2, { "before": true, "after": true }],
"constructor-super": [2],
"no-class-assign": [2],
"no-const-assign": [2],
"no-dupe-class-members": [2],
"no-this-before-super": [2],
"no-var": [2],
//"object-shorthand": [2],
"prefer-arrow-callback": [2],
"prefer-const": [2],
"prefer-spread": [2],
"require-yield": [2],
// Babel
"babel/generator-star-spacing": [2],
"babel/object-shorthand": [2],
// React plugin
"react/display-name": [2],
"react/jsx-boolean-value": [2, "always"],
"react/jsx-closing-bracket-location": [2, { location: "tag-aligned" }],
"react/jsx-indent-props": [2, 4],
"react/jsx-max-props-per-line": [2, { "maximum": 10 }],
"react/jsx-no-duplicate-props": [2, { "ignoreCase": false }],
"react/jsx-no-undef": [2],
"react/jsx-uses-react": [2],
"react/jsx-uses-vars": [2],
"react/no-did-mount-set-state": [2, "allow-in-func"],
"react/no-did-update-set-state": [2],
"react/no-multi-comp": [2],
"react/no-unknown-property": [2],
"react/prop-types": [2],
"react/react-in-jsx-scope": [2],
"react/self-closing-comp": [2],
"react/sort-comp": [2],
"react/wrap-multilines": [2]
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment