ESLint plugin providing linting rules for scoped CSS in Vue.js components. Current stable version is 3.0.0, released in 2025, with active maintenance and regular releases (major every ~2 years). It supports CSS Level 4 selectors, SCSS (via postcss-scss), and Stylus (via postcss-styl), parsing <style>, <template>, and <script> blocks. Key differentiators: dedicated scoped CSS rules (e.g., no-unused-selector, no-deprecated-deep-combinator), built-in TypeScript types, and flat config support (ESLint >=9.38.0). Unlike generic CSS linting plugins, it understands Vue's scoped attributes and deep selectors.
Verified import paths — ran on the pinned version, not inferred.
ESM-only since v3 – CommonJS require() is not supported.
Use bracket notation for named configs; flat configs under configs key.
Rule names are prefixed with 'vue-scoped-css/'.
Flat config example with recommended preset and custom rules.
Breaking-change detection hasn't run for this library yet.
CVE tracking and dependency tree are planned for a later release.