1.11.0 • Published 2 years ago

@qhlab/eslint-plugin v1.11.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Installation

You'll first need to install ESLint:

yarn add eslint -D

Next, install @qhlab/eslint-plugin:

yarn add @qhlab/eslint-plugin -D

Use in React

Create a .eslintrc.json file in your root dir.

{
  "extends": ["plugin:@qhlab/react"]
}

Use in Vue2

Make sure the version of eslint you are using is latest v7, because some new rules depends on eslint v7 and @vue/cli doesn't support eslint v8 currently.

yarn add eslint@^7 -D

Create a .eslintrc.json file in your root dir.

{
  "extends": ["plugin:@qhlab/vue"]
}

Use in Vue3

Make sure the version of eslint you are using is latest v7, because some new rules depends on eslint v7 and @vue/cli doesn't support eslint v8 currently.

yarn add eslint@^7 -D

Create a .eslintrc.json file in your root dir.

{
  "extends": ["plugin:@qhlab/vue3"]
}

Use in Vanilla JS

You don't need to use plugin:@qhlab/base along with plugin:@qhlab/react or plugin:@qhlab/vue or plugin:@qhlab/vue3, these have already added.

Create a .eslintrc.json file in your root dir.

{
  "extends": ["plugin:@qhlab/base"]
}

Use Prettier rules alone

You don't need to use plugin:@qhlab/prettier along with plugin:@qhlab/react or plugin:@qhlab/vue or plugin:@qhlab/vue3, these have already added.

Create a .eslintrc.json file in your root dir.

{
  "extends": ["...your other rules", "plugin:@qhlab/prettier"]
}

Note: Make sure prettier is the last one so it won't be overriden.

Use with typescript

Typescript config is already built in with base config, so you don't need to worry about that, it will override .ts, .tsx files with typescript config rules.

However, you may need to add parserOptions.project to specify your tsconfig.json file.

In most case, you won't need to do that, because it will automatically locate tsconfig.json file base on your current command line path, but if you aren't execute your command line in the same dir, it won't be found, so in that case you need specify mannually.

For example

{
  "extends": ["plugin:@qhlab/react"],
  "parserOptions": {
    "project": "./tsconfig.json"
  }
}

Config References

config nameextends withhas customized?rules from
plugin:@qhlab/prettierplugin:prettier/recommendedeslint-plugin-prettier
plugin:@qhlab/base/eslint official @typescript-eslint
plugin:@qhlab/reactplugin:@qhlab/base plugin:@qhlab/prettiereslint-plugin-react
plugin:@qhlab/vueplugin:@qhlab/base plugin:vue/recommended plugin:@qhlab/prettiernoeslint-plugin-vue
plugin:@qhlab/vue3plugin:@qhlab/base plugin:vue/recommended plugin:@qhlab/prettiernoeslint-plugin-vue

License

MIT

░██████╗░██╗░░██╗██╗░░░░░░█████╗░██████╗░ ██╔═══██╗██║░░██║██║░░░░░██╔══██╗██╔══██╗ ██║██╗██║███████║██║░░░░░███████║██████╦╝ ╚██████╔╝██╔══██║██║░░░░░██╔══██║██╔══██╗ ░╚═██╔═╝░██║░░██║███████╗██║░░██║██████╦╝ ░░░╚═╝░░░╚═╝░░╚═╝╚══════╝╚═╝░░╚═╝╚═════╝░