@mkvlrn/eslint-config-javascript

what
this package mainly extends airbnb's excellent guide, disabling a few rules in order to accommodate the projects i usually create
also includes a default jest config
why
convenience - not having to juggle packages left and right before using eslint is a far away dream, but we can hack it today
install
install package and peerDependencies with a shortcut
install-peerdeps will install all peer dependencies as dev dependencies if needed
npx install-peerdeps @mkvlrn/eslint-config-javascript -Y -D
npx install-peerdeps @mkvlrn/eslint-config-javascript -D
install everything manually
yarn add @mkvlrn/eslint-config-javascript \
@babel/core \
@babel/eslint-parser \
@babel/preset-env \
eslint \
eslint-config-airbnb-base \
eslint-config-prettier \
eslint-plugin-import \
eslint-plugin-jest -D
usage
{
"extends": ["@mkvlrn/eslint-config-javascript"]
}
disabled rules
no-underscore-dangle
this rule just makes it awkward to deal with mongodb models (which have a _id field by default)
import/prefer-default-export
this rule spoils tree-shaking (in some projects) and marks the exporting of cloud functions that require a named export as incorrect