eslint-config-chasevida

1.0.0 • Public • Published

eslint-config-chasevida

Version npm Dependencies

A pretty common ESLint config setup that can be shared around. To get this working you simply install this via npm then add the followingn to your ESLint config file.

Note: This ESLint config is essentially a fork from eslint-config-hapi. Those devs are ace so best stick with theirs, this is just for a few styling differences that my team prefers.

Install

npm install --save-dev eslint-config-chasevida

Use

In your .eslintrc.js file add the following:

{
  "extends": "chasevida"
}

Contributing

If you are submitting a PR to add or change an existing rule please make sure you run $ npm run docs to re-generate the README.md with the updated rule list. As a rule of thumb it should be one commit per rule for easy reference for changes.

SemVer?

Changes that are breaking e.g. upgrading from a warning to an exception should be a major bump. Downgrading to a warning should be a minor bump. Anything else related to a warning (say changing some config) could just be a patch I guess. Suggestions welcome on better ways to version this... could use a date based system¿?

Rules

  1. array-bracket-spacing: [ 2, "never" ]
  2. arrow-parens: [ 2, "always" ]
  3. arrow-spacing: [ 2, { "before": true, "after": true } ]
  4. brace-style: [ 2, "stroustrup" ]
  5. callback-return: [ 2, [ "callback", "next" ] ]
  6. camelcase: 2
  7. chasevida/spaces-in-parens: [ 1, "never", { "exceptions": [ "!" ] } ]
  8. comma-dangle: [ 2, "never" ]
  9. computed-property-spacing: [ 2, "never" ]
  10. consistent-return: 2
  11. consistent-this: [ 2, "self" ]
  12. constructor-super: 2
  13. curly: [ 2, "all" ]
  14. dot-notation: 1
  15. eol-last: 1
  16. eqeqeq: 2
  17. func-style: [ 2, "expression" ]
  18. generator-star-spacing: [ 2, { "before": true, "after": false } ]
  19. global-strict: 0
  20. handle-callback-err: [ 2, "err" ]
  21. hapi/hapi-capitalize-modules: 1
  22. hapi/no-arrowception: 1
  23. indent: [ 2, 4 ]
  24. key-spacing: 2
  25. keyword-spacing: 2
  26. max-depth: [ 2, 5 ]
  27. max-nested-callbacks: [ 2, 3 ]
  28. max-params: [ 1, 4 ]
  29. new-cap: 2
  30. new-parens: 2
  31. newline-after-var: 0
  32. no-array-constructor: 2
  33. no-class-assign: 2
  34. no-console: 1
  35. no-constant-condition: 2
  36. no-else-return: 2
  37. no-empty: 2
  38. no-eq-null: 2
  39. no-eval: 2
  40. no-ex-assign: 2
  41. no-extend-native: [ 2, { "exceptions": [ "Object" ] } ]
  42. no-lonely-if: 2
  43. no-loop-func: 2
  44. no-mixed-requires: 2
  45. no-mixed-spaces-and-tabs: 2
  46. no-multi-spaces: [ 2 ]
  47. no-native-reassign: 2
  48. no-new-object: 2
  49. no-new-require: 2
  50. no-new-wrappers: 2
  51. no-path-concat: 2
  52. no-process-exit: 2
  53. no-redeclare: 2
  54. no-regex-spaces: 2
  55. no-return-assign: 2
  56. no-shadow: 2
  57. no-sparse-arrays: 2
  58. no-this-before-super: 2
  59. no-trailing-spaces: 1
  60. no-undef: 2
  61. no-underscore-dangle: 2
  62. no-unreachable: 2
  63. no-unused-expressions: 2
  64. no-unused-vars: 1
  65. no-use-before-define: [ 1, "nofunc" ]
  66. no-useless-call: 1
  67. no-with: 2
  68. object-curly-spacing: [ 2, "never" ]
  69. object-shorthand: 1
  70. one-var: 0
  71. quotes: [ 2, "single", "avoid-escape" ]
  72. radix: 2
  73. semi: [ 1, "never" ]
  74. sort-vars: 0
  75. space-before-function-paren: [ 2, "always" ]
  76. space-infix-ops: 2
  77. space-unary-ops: [ 1, { "words": true, "nonwords": true } ]
  78. vars-on-top: 0
  79. wrap-iife: [ 2, "inside" ]
  80. yoda: [ 1, "never" ]

Package Sidebar

Install

npm i eslint-config-chasevida

Weekly Downloads

1

Version

1.0.0

License

MIT

Last publish

Collaborators

  • chasevida