Integrations

June 30, 2026 · View on GitHub

This repository contains integrations of Siteimprove's Alfa accessibility checker with various external tools, notably:

  • a Command Line Interface;
  • a minimal scraper/crawler to grab snapshot of web pages;
  • integrations with component libraries such as React or Vue;
  • integrations with testing frameworks such as Cypress or Jest;
  • integrations with browser automations such as Playwright or Puppeteer.

Issues, Discussions, and project board are handled in the main Alfa repository.

Command Line Interface

This repository contains a Command Line Interface for Alfa.

Setup

To build the project, a recent version of Node.js is required in addition to the Yarn package manager. Once installed, do:

yarn install

Next, you can build the project by doing:

yarn build

Usage

You can now run the Alfa CLI with:

# Display help
$ yarn alfa --help
# Audit a single page, storing results in JSON:
$ yarn alfa audit -f json -o audit.json https://example.com
# Scrape a page, to a JSON object that is usable as Alfa's input:
$ yarn alfa scrape -o page.json https://example.com

# Show detailed help for the commands:
$ yarn alfa scrape --help
$ yarn alfa audit --help

Scraper and Crawler

The @siteimprove/alfa-scraper package uses browser automation to navigate to a given page, and scrape its content in a format that is usable by the rest of Alfa.

The @siteimprove/alfa-crawler package contains a minimal crawler that can scrape all pages belonging to a (sub-)domain or a website.

Accessibility Code Checker

This repository hosts the @siteimprove/alfa-test-utils package which is used to power Siteimprove's Accessibility Code Checker. See the Accessibility Code Checker documentation for detailed usage.

Integrations

This repository contains several ready-made integrations of Alfa to various tools, making it easy and simple to integrate accessibility conformance testing as part of your development workflow. If you have suggestions for additional integerations, feel free to open an issue! We are always looking for new places where Alfa can be put to good use.

:warning: Most integrations are still experimental and subject to change. The Cypress, Playwright, Puppeteer, and WebdriverIO integrations are actively maintained as part of the Accessibility Code Checker.

PackageIntegrates with
@siteimprove/alfa-angularAngular
@siteimprove/alfa-chaiChai
@siteimprove/alfa-cheerioCheerio
@siteimprove/alfa-cypressCypress
@siteimprove/alfa-jasmineJasmine
@siteimprove/alfa-jestJest
@siteimprove/alfa-jqueryjQuery
@siteimprove/alfa-playwrightPlaywright
@siteimprove/alfa-puppeteerPuppeteer
@siteimprove/alfa-reactReact
@siteimprove/alfa-seleniumSelenium
@siteimprove/alfa-unexpectedUnexpected
@siteimprove/alfa-vitestVitest
@siteimprove/alfa-vueVue
@siteimprove/alfa-webdriverWebdriverIO

Funding

European emblem

Alfa is part of a project that has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement Nº780057. We would like to give thanks to the European Commission for their grant, as well as all European citizens, who have indirectly contributed to making Alfa possible. You rock! :raised_hands:

License

Copyright © Siteimprove A/S. Released under the terms of the MIT license.