Official ESLint plugin for Vue.js, providing linting rules for Vue single-file components.
eslint-plugin-vue is the official ESLint plugin for Vue.js that provides linting rules specifically for Vue single-file components (SFCs). It analyzes Vue template syntax, script blocks, and component structure to enforce code quality, best practices, and consistency across Vue applications.
Vue.js developers and teams building applications with Vue single-file components who want to integrate linting into their development workflow.
As the official plugin maintained by the Vue.js team, it offers reliable, up-to-date rules aligned with Vue best practices, seamless integration with ESLint, and comprehensive support for Vue 2 and Vue 3 syntax.
Official ESLint plugin for Vue.js
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
As the official plugin maintained by the Vue.js team, it ensures alignment with Vue best practices and timely updates for new Vue features, as stated in the README's philosophy.
Provides multiple shareable configs (base, essential, strongly-recommended, recommended) to enforce varying levels of code quality, helping teams adopt Vue conventions incrementally.
Uses vue-eslint-parser to accurately analyze Vue-specific syntax in templates and scripts, enabling linting of single-file components that standard ESLint parsers can't handle.
Integrates directly with ESLint, allowing developers to leverage existing configurations, plugins, and editor integrations without major workflow changes, as highlighted in the key features.
The plugin does not follow ESLint's semantic versioning; minor updates may introduce new linting errors, requiring careful dependency management with tilde (~) ranges to avoid build breaks, as warned in the README.
Relies on vue-eslint-parser, which adds an extra parsing step that can increase setup complexity and potentially slow down linting performance compared to plain JavaScript projects.
Limited to Vue.js applications, so it provides no value for projects using other frameworks or vanilla JavaScript, making it a niche tool within the broader ESLint ecosystem.