This README covers topics to build and deploy the rules and rule server.
All the extensions and automated tools deployed at IBM Equal Access Accessibility Checker use the same engine and rule server making it easy to replicate finding issues.
- For information on creating and modifying the rules, see README-RULES.
- For information on installing the engine in a Node or browser environment, see README-NPM.
The rule server, engine, and tools are 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 the automated testing tools into the Verify phase. The Toolkit is a major part of the accessibility information and applications at ibm.com/able.
- Rules are based on the IBM Accessibility requirements, which is a unified set of WCAG, EN 301 549, and US 508 standards.
- Rules are harmonized with the open rules published by the W3C ACT-Rules Community group as reported in the IBM Equal Access Accessibility Checker ACT implementation report.
- Rule sets, such as
IBM Accessibility v7.2
,WCAG 2.2 (A & AA)
,WCAG 2.1 (A & AA)
, andWCAG 2.0 (A & AA)
and mappings of the rules to the standards (Requirements), Rule IDs, the individual failure messages, and links to the Help files are published at Checker rule sets. - Mappings of the rules are defined in the individual rule_ID_name.ts files.
By default, deployments build the current ruleset as the preview
archive.
However, different branches deploy to different servers.
The master
branch deploys to able-main.xcc2slstt6y.us-south.codeengine.appdomain.cloud/rules.
For end users to see and be able to select the preview
rule set in the settings, changes must be merged into the prod
branch.
-
Install: In
accessibility-checker-engine
andrule-server
runnpm install
-
Build: Delete
rule-server/dist
. Inrule-server
,npm run build
-
Deploy: The new archive will be found in
rule-server/dist/static/archives/preview
. Copy and renamepreview
to the archive directory (e.g.,rule-server/src/static/archives/yyyy.mm.dd
) -
Metadata: Add an entry to
rule-server/src/static/archives.json
. See other entries for examples. Ensure that you move thelatest
property to the new archive.
If you think you've found a bug, have questions or suggestions, open a GitHub Issue, tagged with engine
.
If you are an IBM employee, feel free to ask questions in the IBM internal Slack channel #accessibility-at-ibm
.