.eslintrc
{ 'parser': 'babel-eslint', 'env': { 'es6': true, 'react-native/react-native': true, }, 'plugins': [ 'react', 'react-native' ], 'extends': [ 'eslint:recommended', 'plugin:react/recommended', ], 'settings': { 'react': { 'version': '16.9', }, }, 'rules': { 'no-unused-vars': ['error', { 'vars': 'all', 'args': 'none', 'ignoreRestSiblings': true, }], 'no-console': ['error'], /* * let foo = [1]; * let bar = [ * 1, * ]; */ 'array-bracket-newline': ['error', 'consistent'], /* * let foo = [1, 2, 3]; */ 'array-bracket-spacing': ['error', 'never'], /* * if (foo) { bar() } */ 'block-spacing': ['error', 'always'], /* * if (foo) { * bar(); * } else { * baz(); * } */ 'brace-style': ['error', '1tbs', { 'allowSingleLine': true }], /* * let foo = [ * 1, * ]; */ 'comma-dangle': ['error', 'always-multiline'], /* * let foo = [1, 2]; */ 'comma-spacing': ['error', { 'before': false, 'after': true }], /* * let foo, * bar, * baz; */ 'comma-style': ['error', 'last'], /* * let foo = bar[bar]; */ 'computed-property-spacing': ['error', 'never'], /* * let that = this; */ 'consistent-this': ['error', 'that'], /* * call(); */ 'func-call-spacing': ['error', 'never'], /* * function bar() { 1; } * let bar = () => 1; */ 'func-style': ['error', 'declaration', { 'allowArrowFunctions': true }], /* * foo(1); * bar( * 2, 3 * ); */ 'function-paren-newline': ['error', 'consistent'], /* * () => 1; */ 'implicit-arrow-linebreak': ['error', 'beside'], /* * [ * 1 * ] */ 'indent': ['warn', 2, { 'SwitchCase': 1 }], /* * <View name='foo' /> */ 'jsx-quotes': ['error', 'prefer-single'], /* * let foo = { bar: true }; */ 'key-spacing': ['error', { 'beforeColon': false, 'afterColon': true }], /* * if (foo) { return; } */ 'keyword-spacing': ['error', { 'before': true, 'after': true }], 'linebreak-style': ['error', 'unix'], 'lines-between-class-members': ['error', 'always'], 'max-len': ['warn', { 'code': 100, 'ignoreTrailingComments': true }], /* * foo(1, 2, 3, 4, 5); */ 'max-params': ['error', { 'max': 6 }], 'max-statements-per-line': ['error', { 'max': 1 }], 'new-parens': ['error'], 'no-trailing-spaces': ['error'], 'no-whitespace-before-property': ['error'], /* * let foo = { bar, baz }; */ 'object-curly-newline': ['error', { 'consistent': true }], 'object-curly-spacing': ['error', 'always'], 'object-property-newline': ['error', { 'allowAllPropertiesOnSameLine': true }], /* * let foo = 'bar' * + 'baz'; */ 'operator-linebreak': ['error', 'before', { 'overrides': { '?': 'after', ':': 'after' } }], /* * 'bar' */ 'quotes': ['warn', 'single'], /* * 1; */ 'semi': ['warn', 'always'], 'semi-spacing': ['error', { 'before': false, 'after': true }], 'semi-style': ['error', 'last'], /* * () => { * }; */ 'space-before-blocks': ['error', 'always'], /* * foo(1, 2, 3); */ 'space-before-function-paren': ['error', { 'anonymous': 'always', 'named': 'never', 'asyncArrow': 'always', }], /* * foo('bar'); */ 'space-in-parens': ['error', 'never'], /* * switch (a) { * case 0: break; * } */ 'switch-colon-spacing': ['error', { 'after': true, 'before': false }], 'react-native/no-unused-styles': ['warn'], 'react-native/no-inline-styles': ['warn'], },} /* vim: set ft=javascript : */