Accessibility auditing for Vue.js applications by running dequelabs/axe-core validation on the page you're viewing, axe-core
will run 1 second after the last VueJS update (with a 5 seconds debounce max wait). Package inspired by dequelabs/react-axe.
npm install -D vue-axe
yarn add -D vue-axe
import Vue from 'vue'
if (process.env.NODE_ENV !== 'production') {
const VueAxe = require('vue-axe')
Vue.use(VueAxe, {
config: {
// ...
rules: [
{ id: 'heading-order', enabled: true },
{ id: 'label-title-only', enabled: true },
// and more
]
}
})
}
Key | Description | Default | Required |
---|---|---|---|
clearConsoleOnUpdate |
Clears the console each time vue-axe runs |
true |
false |
config |
Provide your Axe-core configuration: https://github.com/dequelabs/axe-core/blob/master/doc/API.md#api-name-axeconfigure | false |
Create plugin file plugins/axe.js
import Vue from 'vue'
if (process.env.NODE_ENV !== 'production') {
const VueAxe = require('vue-axe')
Vue.use(VueAxe, {
config: {
// your configuration data
}
})
}
In config file nuxt.config.js
...
plugins: [
{ src: '~/plugins/axe', ssr: false }
]
<!-- Required Javascript -->
<script src="https://unpkg.com/vue"></script>
<script src="https://unpkg.com/vue-axe"></script>
Vue.use(VueAxe, {
config: {
// your configuration data
}
})
git clone https://github.com/vue-a11y/vue-axe.git vue-axe-demo
cd vue-axe-demo/demo
npm install
npm run dev
It is a simple webpack template already installed and configured to run and check the logs in the browser console.
After the commands just access the http://localhost:8080/
git clone https://github.com/vue-a11y/vue-axe.git vue-axe
npm install
npm run test
Or run Cypress on interactive mode
npm run test:open
- Check the open issues or open a new issue to start a discussion around your feature idea or the bug you found;
- Fork repository, make changes and send a pull request;
If you want a faster communication, find me on @ktquez And follow us on Twitter @vue_a11y
thank you