This Git repository hosts tools and supporting components of the IBM Equal Access Toolkit. The Toolkit provides the tools and guidance to create experiences that are delightful for people of all abilities. The guidance is organized by phase, such as Plan, Design, Develop, and Verify, and explains how to integrate these automated testing tools into the Verify phase. The Toolkit is a major part of the accessibility information and applications at ibm.com/able.
This README covers topics for users who want to find and install the deployed tools as well as topics for developers who want to better understand the various components and build the tools themselves.
The wiki contains overview information, links to videos, and other resources. See the Release Notes for the latest deployed changes in the tools, rules, and components.
The tools have been deployed to the browser and NPM stores so they can be easily downloaded and installed.
The browser extensions provide an integrated checking experience and visualizations to help users quickly identify the source of accessibility issues and try fixes:
- Chrome Web Store extension : web browser extension that integrates automated accessibility checking capabilities into the Chrome Developer Tools.
- Firefox Add-on extension : web browser extension that integrates automated accessibility checking capabilities into the Firefox Web Developer Tools.
- Edge Add-on extension : web browser extension that integrates automated accessibility checking capabilities into the Edge Developer Tools.
- Node accessibility-checker: automated accessibility testing within a continuous integration pipeline, such as Travis CI for Node-based test environments, that works with test frameworks such as Selenium, Puppeteer, Playwright, and Zombie; and provides the ability to validate results against baseline files, and scan local files.
- Karma-accessibility-checker: automated accessibility testing for the Karma environment.
- Cypress-accessibility-checker: wrapper of the
accessibility-checker
in the Cypress environment.
$ git clone --branch=master https://github.com/IBMa/equal-access.git
$ cd equal-access
or with SSH
$ git clone --branch=master git@github.com:IBMa/equal-access.git
$ cd equal-access
Under the equal-access directory
npm install
Now you can select the tool you want to build and follow the tool's README instructions located in its sub-directory.
Please review the README of the selected tool for more information specific to that tool
- accessibility-checker-extension/README: A web developer tools browser extension that adds automated accessibility checking capabilities
- accessibility-checker/README: Automated accessibility testing for Node-based test environments, the ability to validate results against baseline files, and scan local files
- karma-accessibility-checker/README: Automated accessibility testing for the Karma environment
- cypress-accessibility-checker/README: Wrapper of accessibility-checker for the Cypress environment
- accessibility-checker-engine/README: accessibility rules and evaluation engine used by
- rule-server/README: deploys the rules and engine for usage by the tools
Build all the tools and components from the root directory or build each individual tool separately.
cd to equal-access if you are not already in the root directory, then run:
$ npm install
$ npm run build
- In the equal-access/accessibility-checker-engine/dist directory
- ace-debug.js: uncompressed javascript to be used in a browser environment for development
- ace.js: compressed javascript to be used in a browser environment for production
- ace-node-debug.js: uncompressed javascript library to be used in a NodeJS environment for development
- ace-node.js: compressed javascript library to be used in a NodeJS environment for production
- In the equal-access/accessibility-checker/package directory
- JavaScript source that can be installed or deployed as npm package that works with an HTML parsing engines, such as Selenium, Puppeteer, Playwright, or Zombie to allow developers to perform integrated accessibility testing within a continuous integration pipeline, such as Travis CI. Please view more details.
- In the equal-access/karma-accessibility-checker/package directory
- javascript source that can be used as a Karma plugin, see more details.
Please check the README for each individual tool for its build instructions:
- accessibility-checker-engine/README
- accessibility-checker-extension/README
- accessibility-checker/README
- cypress-accessibility-checker/README
- karma-accessibility-checker/README
If you think you've found a bug, have questions or suggestions, open a GitHub Issue. If you are an IBM employee, feel free to ask questions in the IBM internal Slack channel #accessibility-at-ibm
.