← ClaudeAtlas

accessibility-gatelisted

Use as a pass/fail gate on any diff with a user-facing surface — by code-reviewer during review, by qa-engineer during the test pass, and by any IC before claiming a UI ticket done. This is the gate the plan called for instead of an accessibility specialist role. Triggers whenever a screen, component or state changes.
vmobifystudio/app-dev-team · ★ 4 · Code & Development · score 74
Install: claude install-skill vmobifystudio/app-dev-team
# Accessibility gate The studio's position, from the plan: accessibility does not need a specialist role, it needs a **gate that can fail**. This is that gate. It runs on the diff, not on the finished app, because a retrofit is an order of magnitude more expensive than doing it in the ticket. Where a platform auditor exists, spawn it first and fold its findings in — `axiom:accessibility-auditor` on iOS, `ui-design:accessibility-audit` elsewhere. **Both are external and optional** (separate plugins, not this one's `skills/`). Missing → record `N/A: <tool> — not installed`, walk the list by hand, never file the absence as a defect. ## The gate Each item is `PASS` or `FAIL: <what and where>`. There is no partial credit and no "minor". 1. **Every interactive element has an accessible label** that says what it does — not its icon name. An unlabelled icon button is a control that does not exist for a screen-reader user. 2. **Reading order matches visual order**, and grouped content is grouped for the screen reader too. 3. **Every state change is announced** — loading finished, error appeared, item deleted. A silent state change strands the user in the previous screen. 4. **Touch targets are at least 44pt (iOS) / 48dp (Android)**, including in dense lists. 5. **Contrast**: 4.5:1 body text, 3:1 large text and non-text indicators. Checked against the token, in both light and dark. 6. **Colour is never the only signal.** Error, selection and status carry a shape, an icon