Config
module.exports = {
env: {
browser: true,
commonjs: true,
es6: true,
node: true
},
globals: {
Atomics: 'readonly',
SharedArrayBuffer: 'readonly'
},
parserOptions: {
ecmaVersion: 2020
},
extends: [
'standard',
'eslint:recommended'
],
rules: {
'no-await-in-loop': 'off',
'no-console': 'off',
'no-useless-catch': 'off',
eqeqeq: 'off',
'prefer-regex-literals': 'off',
'default-case': 'off',
'comma-dangle': [
'error',
'never'
],
'prefer-const': 'error',
'arrow-parens': [
2,
'as-needed'
],
'no-param-reassign': 'error',
'object-curly-spacing': [
'error',
'always'
],
curly: [
2,
'all'
],
semi: [
'error',
'never'
],
indent: [
'error',
2,
{
SwitchCase: 1,
outerIIFEBody: 'off'
}
],
'comma-spacing': [
'error',
{
before: false,
after: true
}
],
'brace-style': [
'error',
'1tbs',
{
allowSingleLine: false
}
],
'no-unused-vars': [
'error',
{
argsIgnorePattern: 'next|_.+',
varsIgnorePattern: '_'
}
],
'quote-props': [
'error',
'as-needed'
],
'no-multiple-empty-lines': [
'error',
{
max: 1,
maxEOF: 0
}
]
}
}
Dependencies
function install (dependencies) {
const packages = Object.entries(dependencies)
.map(([package, version]) => `${package}@${version}`)
.join(' ')
return `npm i --save-dev ${packages}`
}
install({
"eslint": "7.32.0",
"eslint-config-standard": "16.0.3",
"eslint-plugin-import": "2.25.3",
"eslint-plugin-node": "11.1.0",
"eslint-plugin-promise": "4.3.1",
"eslint-plugin-standard": "4.0.1"
})