An ESLint Shareable Config for my projects. It uses typescript-eslint as its parser.
yarn add eslint-config-vkbansal
Shareable configs are designed to work with the extends
feature of .eslintrc
files.
You can learn more about Shareable Configs on the official ESLint website.
Then, add this to your .eslintrc
file:
{
"extends": [
"vkbansal",
"vkbansal/typescript"
],
" parserOptions": {
"project": "tsconfig.json"
}
}
Note: We omitted the eslint-config-
prefix since it is automatically assumed by ESLint.
You can override settings from the shareable config by adding them directly into your .eslintrc
file.
This package also includes a shareable config to be used with React
or JSX
. Just add this to your .eslintrc
file:
{
"extends": [
"vkbansal",
"vkbansal/typescript"
"vkbansal/react"
],
"parserOptions": {
"project": "tsconfig.json"
}
}
Config | airbnb-base (11.1.1) | vkbansal (5.0.0) |
---|---|---|
indent | 2 spaces | 4 spaces |
eqeqeq | ignore for null | always |
no-eq-null | off | error |
no-implicit-coercion | off | error |
no-warning-comments | off | warn |
require-await | off | error |
wrap-iife | outside, functionPrototypeMethods: false | inside, functionPrototypeMethods: false |
yoda | off | error |
comma-dangle | always-multiline | never |
no-constant-condition | warn | error |
no-extra-parens | off | error |
no-constant-condition | warn | error |
max-len | 100 | 120 |
no-continue | error | off |
no-nested-ternary | error | off |
no-plusplus | error | off |
no-restricted-syntax | ForInStatement , ForOfStatement , LabeledStatement , WithStatement |
LabeledStatement , WithStatement |
nonblock-statement-body-position | off | error |
template-tag-spacing | off | error |
wrap-regex | off | error |
prefer-const | error | off |
no-native-reassign (deprecated) | off | N/A |
no-negated-in-lhs (deprecated) | off | N/A |
no-spaced-func (deprecated) | error | N/A |
prefer-reflect (deprecated) | off | N/A |
import/imports-first (deprecated) |
off | N/A |
Config | airbnb (14.1.0) | vkbansal (5.0.0) |
---|---|---|
forbid-prop-types | any , array , object |
none |
jsx-closing-bracket-location | line-aligned | after-props |
jsx-handler-names | off | error |
jsx-indent-props | 2 | 4 |
jsx-indent | 2 | 4 |
jsx-indent-key | off | error |
no-direct-mutation-state | off | error |
sort-props | no handler-names | handler-names included |
jsx-filename-extension | .jsx |
.js |
Config | airbnb (14.1.0) | vkbansal (5.0.0) |
---|---|---|
named | off | error |
default | off | error |
namespace | off | error |
no-commonjs | off | error |
no-nodejs-modules | off | error |
order | off | error |
MIT. Copyright (c) Vivek Kumar Bansal.