equal-access
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.
Overview
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.
Usage
The tools have been deployed to the browser and NPM stores so they can be easily downloaded and installed.
Browser extensions
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.
Automated testing packages
- 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.
Requirements for building the tools
Clone Repository
$ 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
Install dependencies
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.
What's in this repository?
Please review the README of the selected tool for more information specific to that tool
Tools
Components
Build
Build all the tools and components from the root directory or build each individual tool separately.
Build all the tools from root directory
cd to equal-access if you are not already in the root directory, then run:
$ npm install
$ npm run build
All the following libraries or tools are built by running the above commands
- 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.
Build each individual tool separately
Please check the README for each individual tool for its build instructions:
Feedback and reporting bugs
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
.
License
![IBM Equal Access Toolkit is released under the Apache-2.0 license](https://img.shields.io/badge/license-Apache--2.0-blue.svg)