Set of Javascript rules that I consider useful to remain a good Javascript code style. 👮
-
Pick one way to install the addon.
$ yarn add eslint-config-konrad --dev $ npm install eslint-config-konrad --save-dev
-
Inherit in your eslint config (
.eslintrc
or.eslintrc.js
){ "extends": "eslint-config-konrad", "rules": {} }
Inherits from eslint:recommended.
Enforce a maximum cyclomatic complexity of 10 allowed in a program which can be one indicator for the quality of your code. (Codecentric Article, Docs)
Require const declarations for variables that are never reassigned after declared. (Docs)
Disallow strict mode in ES6 modules context (modules are "strict" by design), otherwise require it. (Docs)
Disallow unused local variables. Don't check arguments. (Docs)
Disallow empty block statements except empty catch blocks. (Docs)
Disallow duplicate module imports. (Docs)
Require template literals instead of string concatenation. (Docs)
Require constructor names to begin with a capital letter. (Docs)
Enforce consistent indentation of 2 spaces. (Docs)
Enforce the consistent use of single quotes, except when a different type avoids escaping. (Docs)
Enforce consistent UNIX linebreak style. (Docs)
Require semicolons instead of ASI. (Docs)
Enforce consistent comma style with comma after and on the same line as an array element, object property, or variable declaration. (Docs)
Disallow multiple empty lines. (Docs)
Disallow trailing whitespace at the end of lines. (Docs)
valid-jsdoc ["error",{"requireParamDescription": false,"requireReturnDescription": false,"prefer": {"return": "returns"}}]
Don't require JSDoc, but if attached, enforce it to be valid and consistent. Don't require param or return value description (but presence!) and enforce "@returns" instead of a mixture of "@return" and "@returns". (Docs)