@cloudbeds/eslint-config
v2.11.1
Published
ESLint configuration for Cloudbeds apps
Downloads
16,041
Keywords
Readme
@cloudbeds/eslint-config
This package provides a shared extensible ESLint config for Cloudbeds apps. There are Javascript, Typescript, React, VueJs, Jest, and JSON configs.
Shareable configs are designed to work with the extends
feature of .eslintrc
files.
Airbnb JavaScript style guide is used as the basis for our ESLint configuration with some additions/changes. See JavaScript Style Guide Confluence page.
This package is shared as a public NPM module under the @Cloudbeds NPM organization.
Installation
Install ESLint and all dependencies:
npm install @cloudbeds/eslint-config --save-dev
Getting started
Add the following to your package.json
{
"scripts": {
"lint": "eslint src/**/*.{js,vue,ts}",
"lint:show-unused-directives": "npm run lint -- --report-unused-disable-directives",
},
"eslintConfig": {
"extends": "@cloudbeds/eslint-config"
}
}
Special Cases
Typescript
By default path to tsconfig is ./tsconfig.json. If you have different path to tsconfig file.
You can specify path and rules in your .eslintrc.js
:
module.exports = {
extends: '@cloudbeds/eslint-config',
overrides: [
{
files: ['*.ts', '**/*.ts'],
parserOptions: {
project: 'path_to_tsconfig.js',
},
rules: {
'some_rule': ['off', options]
},
},
],
};
Eslint-plugin-import
If you have a webpack config please specify it in your .eslintrc.js
:
{
"settings": {
"import/resolver": {
"webpack": {
"config": "./webpack.bask.js"
}
}
}