{"id":10837,"library":"eslint-plugin-vue-a11y","title":"ESLint Plugin for Vue Accessibility (A11y)","description":"This package, `eslint-plugin-vue-a11y`, is an ESLint plugin designed to statically check accessibility rules within Vue.js single-file components (`.vue` files). It aims to help developers identify common accessibility issues in their Vue templates and scripts. However, it is important to note that this specific package, currently at version 0.0.31, has been abandoned. Its last known update was seven years ago, and it only supports older versions of ESLint (peer dependencies `^3 || ^4 || ^5`) and implicitly older Vue.js versions. For modern Vue.js and ESLint environments, the actively maintained and recommended successor is `eslint-plugin-vuejs-accessibility`, which provides similar functionality with ongoing development and compatibility with current toolchains.","status":"abandoned","version":"0.0.31","language":"javascript","source_language":"en","source_url":"https://github.com/maranran/eslint-plugin-vue-a11y#readme","tags":["javascript","eslint","eslintplugin","eslint-plugin","vue","a11y","accessibility"],"install":[{"cmd":"npm install eslint-plugin-vue-a11y","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-vue-a11y","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-vue-a11y","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency for ESLint integration; only supports versions ^3, ^4, or ^5.","package":"eslint","optional":false}],"imports":[{"note":"This configures the plugin in your `.eslintrc` file. Note that this package is abandoned and incompatible with modern ESLint/Vue setups.","symbol":"ESLint Plugin Configuration","correct":"{ \"plugins\": [ \"vue-a11y\" ] }"},{"note":"Extends your ESLint configuration with the plugin's base set of accessibility rules. Not recommended for use with current ESLint versions.","symbol":"Base Rule Set Extension","correct":"{ \"extends\": [ \"plugin:vue-a11y/base\" ] }"},{"note":"Enables and configures individual rules from the plugin. Each rule would be prefixed with `vue-a11y/`. This package is abandoned.","symbol":"Specific Rule Configuration","correct":"{ \"rules\": { \"vue-a11y/alt-text\": 2 } }"}],"quickstart":{"code":"{\n  \"root\": true,\n  \"env\": {\n    \"node\": true\n  },\n  \"extends\": [\n    \"eslint:recommended\",\n    \"plugin:vue/recommended\",\n    \"plugin:vue-a11y/base\" // Or \"plugin:vue-a11y/recommended\"\n  ],\n  \"plugins\": [\n    \"vue-a11y\"\n  ],\n  \"rules\": {\n    // Example: Override or add specific rules\n    \"vue-a11y/alt-text\": [\"error\", { \"elements\": [\"img\", \"area\", \"input[type='image']\"] }],\n    \"vue-a11y/accessible-emoji\": \"warn\"\n  },\n  \"parserOptions\": {\n    \"parser\": \"@babel/eslint-parser\", // Adjust based on your setup (e.g., @typescript-eslint/parser for TS)\n    \"ecmaVersion\": 2018,\n    \"sourceType\": \"module\"\n  }\n}","lang":"json","description":"This `.eslintrc.json` snippet demonstrates how to configure the `eslint-plugin-vue-a11y` plugin, enabling its base rules and a few specific rules. This configuration is for the abandoned package and is not compatible with modern ESLint or Vue.js projects. Consider using `eslint-plugin-vuejs-accessibility` instead."},"warnings":[{"fix":"Migrate to the actively maintained successor `eslint-plugin-vuejs-accessibility`. Uninstall `eslint-plugin-vue-a11y` and install `eslint-plugin-vuejs-accessibility` instead.","message":"This package is effectively abandoned and incompatible with modern ESLint versions (v6+). Its peer dependencies only support ESLint ^3, ^4, or ^5. Attempting to use it with newer ESLint versions will result in plugin loading errors.","severity":"breaking","affected_versions":">=0.0.31"},{"fix":"For new projects or existing projects using modern Vue/ESLint, use `eslint-plugin-vuejs-accessibility` (e.g., `npm install --save-dev eslint-plugin-vuejs-accessibility`).","message":"The `eslint-plugin-vue-a11y` package has been superseded. Its last update was 7 years ago (as of 2019), and it does not support Vue 3 or later, or modern JavaScript features.","severity":"gotcha","affected_versions":">=0.0.31"},{"fix":"No direct fix, but reinforces the recommendation to switch to `eslint-plugin-vuejs-accessibility` for a stable and maintained solution.","message":"The low version number (0.0.31) indicates that this plugin was likely in an early development stage and never reached a stable major release, further reinforcing its abandoned status.","severity":"gotcha","affected_versions":">=0.0.31"},{"fix":"Ensure both ESLint and its plugins are installed locally within your project for better consistency and version control.","message":"If ESLint was installed globally (`npm i eslint -g`), `eslint-plugin-vue-a11y` must also be installed globally (`npm i eslint-plugin-vue-a11y -g`) for ESLint to locate it. This global installation approach is generally discouraged in favor of local project installations.","severity":"gotcha","affected_versions":">=0.0.31"}],"env_vars":null,"last_verified":"2026-04-19T00:00:00.000Z","next_check":"2026-07-18T00:00:00.000Z","problems":[{"fix":"This package is abandoned. Update your project to use `eslint-plugin-vuejs-accessibility` and a modern ESLint version, or downgrade ESLint to a compatible version (not recommended for long-term projects).","cause":"The installed ESLint version is incompatible with the peer dependency requirements of `eslint-plugin-vue-a11y` (ESLint ^3, ^4, or ^5).","error":"Error: Failed to load plugin 'vue-a11y' declared in '.eslintrc'..."},{"fix":"Ensure `\"vue-a11y\"` is present in the `plugins` array and that the rule ID (e.g., `alt-text`) is correctly prefixed with `vue-a11y/`.","cause":"The `eslint-plugin-vue-a11y` plugin is either not correctly listed in the `plugins` array of your `.eslintrc`, or the rule name is incorrect.","error":"Definition for rule 'vue-a11y/rule-name' was not found"},{"fix":"Ensure `vue-eslint-parser` is installed and properly configured in your ESLint `parserOptions`, potentially through extending a recommended Vue config (e.g., `plugin:vue/recommended`). However, remember this package is abandoned.","cause":"Many rules in this plugin require `vue-eslint-parser` to parse `<template>` ASTs. This error indicates it's missing or an incorrect version is being used.","error":"What is the \"Use the latest vue-eslint-parser\" error?"}],"ecosystem":"npm"}