Conformance
Atlas targets WCAG 2.2 Level AA conformance across every authenticated and public surface - the dashboard, goals, habits, journal, settings, /pricing, /security, and this page.
- Standard. Web Content Accessibility Guidelines (WCAG) 2.2, Level AA - the version currently referenced by the European Accessibility Act and the U.S. Section 508 refresh.
- Scope. Every route under
atlas.app that is reachable by a logged-in customer or by an unauthenticated visitor. Internal admin tooling (/super-admin/*) is not in scope and is gated to staff. - Status - self-attested. This page is a self-attestation, not a third-party certification. We hold ourselves to AA conformance against the criteria below; a formal independent audit (Deque / Level Access) is queued and will replace this self-attestation once complete.
- Standards we deliberately exceed. Where AAA is cheap (e.g. visible focus rings, motion-reduction support, captions on every product video) we ship AAA by default. The product also ships a global
:focus-visible rule, prefers-reduced-motion respect, and a skip-to-main-content link on every page.
Testing methodology
Accessibility is enforced as a build-time and runtime invariant, not a periodic audit.
- Automated - axe-core gate every iteration. Every component primitive ships with a
vitest-axe suite that runs against all rendered phases of that primitive (idle, hover, expanded, error, disabled, etc.) - every shipped component passes the gate. The pipeline blocks on any serious or critical violation; moderate violations open a tracking issue. Color-contrast specifically is deferred to the Playwright e2e in real Chromium because jsdom's computed-style approximations produce false positives. - Keyboard navigation. Every interactive primitive has a
keyboard.spec.ts that asserts Tab order, Shift+Tab, arrow-key roving (where applicable), and Escape-to-dismiss. Focus is never trapped outside of intentional modal dialogs. The global :focus-visible rule guarantees a visible ring on every focusable element. - Screen reader testing. Each release candidate is smoke-tested with VoiceOver on macOS Safari, NVDA on Windows Firefox, and TalkBack on Android Chrome. Findings are filed against the release before promotion. Native screen-reader runs cover the dashboard, capture, briefing, agents, auto-schedule, settings, and every public marketing surface.
- Reduced motion + skip links. A site-wide
@media (prefers-reduced-motion: reduce) rule disables non-essential animations; a Skip to main content link is the first focusable element on every page. - i18n coverage as an a11y axis. Atlas has grown from 191 keys to 400+ i18n keys per locale across 8 locales (iter 36). Localized text is itself an accessibility feature for non-English-first assistive-tech users.
- Manual reviews. Designers and engineers run a 12-item accessibility checklist against every shipped feature; the checklist includes color contrast, reduced-motion, error-message clarity, and zoom to 400%.
- Third-party audits. A formal independent WCAG audit (Deque / Level Access) is queued and will produce the certification that supersedes this self-attestation.
Known limitations
We publish known accessibility gaps the same way we publish security disclosures - in the open, with an owner and an ETA.
- Drag-and-drop reordering in the dashboard list view does not yet expose an equivalent keyboard-only path. As a workaround, every reorderable list also offers up/down buttons in the row's overflow menu. Tracking issue: ATLAS-1142. Target: Q3 2026.
- Calendar grid in the goals planner does not announce date changes optimally on TalkBack - the live region updates fire but the role is being interpreted as a generic grid. Tracking issue: ATLAS-1188. Target: Q2 2026.
- PDF exports of journal entries are not yet tagged. Until they are, screen reader users should request the Markdown export instead, which is fully accessible. Tracking issue: ATLAS-1041. Target: Q4 2026.
- Third-party embeds (Loom, YouTube) inside customer journal entries inherit the embedded provider's accessibility surface, which we do not control. We surface a "view transcript" affordance where the provider supports one.
- Color-contrast in jsdom. Our axe-core unit gate skips the
color-contrast rule because jsdom cannot compute real styles; the rule is enforced in the Playwright e2e against a real Chromium and against the production CSS. This is a testing-pipeline detail, not a runtime gap.
If you encounter a barrier that is not on this list, please report it (next section) - we would rather hear about it from you than discover it on our next audit.
Reporting an issue
If something in Atlas is hard or impossible to use with assistive technology, we want to fix it.
- Email.
accessibility@atlas.app - monitored on every business day; auto-acknowledged within an hour, human reply within one business day. - In-app. Settings Help Report an accessibility issue opens a pre-filled form that includes your route, browser, and assistive-tech configuration so you don't have to type it.
- Severity targets. Critical barriers (cannot complete a core task) are triaged within 2 business days and patched within 10 business days. Lower-severity issues are scheduled into the next product cycle.
- Anonymous reports. You can report without an account; we will publish the fix in
/changelog even if we cannot reply to you directly.
We do not require a reproduction or a perfectly written bug report - a screenshot, a screen-recording, or a one-line description is enough to start.
Statement of authority
This statement was last reviewed and approved on May 7, 2026 and reflects the state of the production application on that date.
- Approving authority. This statement is self-attested by Atlas's Head of Engineering. The signed PDF is available on request.
- Formal third-party certification. A formal WCAG 2.2 AA certification engagement with Deque / Level Access is queued. Once that engagement closes, this page will publish the issued certificate and reference the auditor's report instead of relying on self-attestation.
- Review cadence. This page is reviewed at minimum every six months, on every major release, and within 30 days of any third-party audit finding.
- Feedback influence. Customer and researcher feedback materially shapes the roadmap - three of the four "Known limitations" above were filed by users and are tracked publicly in our changelog.
- Legal frameworks. The statement is intended to satisfy the EU Web Accessibility Directive's reporting requirements, the European Accessibility Act, U.S. Section 508 (where Atlas is procured by federal agencies), and the substantive standards of the ADA.
Questions about the statement itself - not a specific bug - also go to accessibility@atlas.app.