Для использования Axe-core в проектах на JavaScript оптимальным способом является установка через npm. Эта библиотека предоставляет инструменты для автоматизированной проверки доступности веб-страниц и компонентов, что делает интеграцию с существующим фронтенд-кодом простой и гибкой.
Перед установкой необходимо убедиться, что проект инициализирован как npm-проект. Проверка выполняется командой:
npm init -y
Эта команда создаёт файл package.json с базовыми
настройками, который нужен для управления зависимостями.
Установка выполняется одной командой:
npm install axe-core --save
axe-core — основной пакет библиотеки.--save добавляет зависимость в
package.json (для современных версий npm это делается
автоматически, поэтому флаг можно опустить).После установки библиотека доступна в проекте через стандартный импорт:
import axe from 'axe-core';
Для проектов, использующих CommonJS, применяется синтаксис:
const axe = require('axe-core');
Чтобы убедиться, что установка прошла корректно, можно выполнить простую проверку:
console.log(axe.version);
Если библиотека корректно установлена, будет выведена текущая версия Axe-core.
Для интеграции с браузером через тесты или автоматизацию часто используют следующие пакеты:
axe-core/playwright — для работы с
фреймворком Playwright и
автоматизации проверки UI.axe-core/puppeteer — для интеграции с
Puppeteer и headless-браузерами.Установка выполняется так же через npm:
npm install axe-core puppeteer --save-dev
Это позволяет запускать проверки доступности в среде автоматизированного тестирования, что критически важно для CI/CD-процессов.
React и Vue не требуют отдельной
установки, достаточно подключить axe-core через npm.
Примеры:
// React
import React, { useEffect } from 'react';
import axe from 'axe-core';
function App() {
useEffect(() => {
axe.run(document, {}, (err, results) => {
if (err) throw err;
console.log(results.violations);
});
}, []);
return <div>Пример использования Axe-core</div>;
}
export default App;
// Vue
import { onMounted } from 'vue';
import axe from 'axe-core';
export default {
setup() {
onMounted(() => {
axe.run(document, {}, (err, results) => {
if (err) throw err;
console.log(results.violations);
});
});
}
};
npm позволяет поддерживать библиотеку в актуальном состоянии с помощью команды:
npm update axe-core
Регулярное обновление важно, так как Axe-core активно развивается и исправляет новые случаи нарушений доступности.
После установки и базовой интеграции проект будет иметь следующую структуру:
project/
├─ node_modules/
│ └─ axe-core/
├─ package.json
├─ package-lock.json
├─ src/
│ └─ index.js
Это обеспечивает удобный доступ к API библиотеки и возможность подключать её к любым тестовым и фронтенд-процессам.
Axe-core через npm обеспечивает гибкость и стандартизированное управление зависимостями, позволяя интегрировать проверки доступности напрямую в рабочий процесс разработки.