eslint-processor-vue-blocks

Create virtual files in ESLint for each Vue SFC block, so that you can lint them individually.
43,954,353 33
Install
npm install eslint-processor-vue-blocks
Latest Version:2.0.0
Vue:3
License:MIT
Last Updated:Feb 8, 2025
Links: GitHub  ·  npm
Maintainer: antfu

eslint-processor-vue-blocks

npm version npm downloads bundle JSDocs License

Create virtual files in ESLint for each Vue SFC block, so that you can lint them individually.

Install

npm i -D eslint-processor-vue-blocks eslint-merge-processors

Usage

In ESLint flat config:

// eslint.config.js
import { mergeProcessors } from 'eslint-merge-processors'
import pluginVue from 'eslint-plugin-vue'
import processorVueBlocks from 'eslint-processor-vue-blocks'

export default [
  {
    files: ['*/*.vue'],
    plugins: {
      vue: pluginVue,
    },
    // `eslint-plugin-vue` will set a default processor for `.vue` files
    // we use `eslint-merge-processors` to extend it
    processor: mergeProcessors([
      pluginVue.processors['.vue'],
      processorVueBlocks({
        blocks: {
          styles: true,
          customBlocks: true,
          // Usually it's not recommended to lint <script> and <template>
          // As eslint-plugin-vue already provides the support
          script: false,
          template: false,
        }
      }),
    ]),
    rules: {
      // ...
    }
  },
  {
    files: ['**/*.css'],
    // ... now you can lint CSS files as well as the <style> blocks in Vue SFCs
  }
]

Sponsors

License

MIT License © 2023-PRESENT Anthony Fu

Related Packages

@forsakringskassan/eslint-config-vue

Försäkringskassans eslint shareable vue config

286,740 0
@scayle/eslint-config-storefront

SCAYLE Commerce Engine specific eslint configuration

218,314
eslint-config-vue

eslint config for vue.js projects

313,105 320
@cloudflight/eslint-plugin-vue

Cloudflight eslint-plugin & eslint-config for vue

38,060

Version History

Version Released License
2.0.0 MIT
1.0.0 MIT
0.1.2 MIT
0.1.1 MIT
0.1.0 MIT