eslint-config-digitalbazaar v5.2.0
eslint-config-digitalbazaar
This package provides eslint rules used by Digital Bazaar as a set of extendable shared configs.
There are 6 rule sets:
1. eslint-config-digitalbazaar: Base rules for both node and the browser.
2. eslint-config-digitalbazaar/import: Rules for es6 imports in the browser and node.
3. eslint-config-digitalbazaar/jsdoc: Rules for JSDoc for both node and the browser.
4. eslint-config-digitalbazaar/module: Rules for modules for both node and the browser.
5. eslint-config-digitalbazaar/vue: Rules for Vue 2 projects and browser only.
6. eslint-config-digitalbazaar/vue3: Rules for Vue 3 projects and browser only.
Installation
If you do not have eslint installed:
npm i -D eslint
npm i -D eslint-config-digitalbazaarTo start an eslint config file:
npx eslint --initor rename a template from the templates dir
cp node_modules/eslint-config-digitalbazaar/templates/node.js ./.eslintrc.cjsUsage
All rules can be accessed via the shorthand digitalbazaar
or using the full module name eslint-config-digitalbazaar.
Eslint's documentation on shareable configs can be found here.
Example .eslintrc.cjs root setup:
module.exports = {
root: true,
// using full module name
extends: ['eslint-config-digitalbazaar']
}Imports
To use the import rules you need to install eslint-plugin-import:
npm i -D eslint-plugin-importExample .eslintrc.cjs import setup:
module.exports = {
extends: ['digitalbazaar/import']
}JSDoc
To use the JSDoc rules you will need to install eslint-plugin-jsdoc:
npm i -D eslint-plugin-jsdocExample .eslintrc.cjs JSDoc setup:
module.exports = {
// only the JSDoc rules and any rules in parent dirs
extends: ['digitalbazaar/jsdoc']
}Modules
To use ES module code rather than CommonJS, you will need to install eslint-plugin-unicorn:
npm i -D eslint-plugin-unicornExample .eslintrc.cjs ESM setup:
module.exports = {
// only the module rules and any rules in parent dirs
extends: ['digitalbazaar/module']
}Vue 2
To use the Vue 2 rules you will need to install eslint-plugin-vue:
npm i -D eslint-plugin-vueExample .eslintrc.cjs Vue setup:
module.exports = {
// only the vue rules and any rules in parent dirs
extends: ['digitalbazaar/vue']
}For command line use you may need to explicitly enable linting .vue
files.
Vue 3
To use the Vue 3 rules you will need to install eslint-plugin-vue:
npm i -D eslint-plugin-vueExample .eslintrc.cjs Vue setup:
module.exports = {
// only the vue3 rules and any rules in parent dirs
extends: ['digitalbazaar/vue3']
}For command line use you may need to explicitly enable linting .vue
files.
Composition
The rules do not depend on each other and are composable:
module.exports = {
extends: [
'digitalbazaar',
'digitalbazaar/jsdoc',
'digitalbazaar/module'
'digitalbazaar/vue3'
] // 4 rule sets in one file using shorthand.
}The rules can also be used together via cascade configuration.
Other Rules
Other rules that are not included above but can be useful:
unicorn/prefer-node-protocol
Use node:module style for Node.js modules.
See unicorn/prefer-node-protocol.
Requires:
npm i -D eslint-plugin-unicornRules:
rules: {
'unicorn/prefer-node-protocol': 'error'
}2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago