Accessibility Commitment Template
[!IMPORTANT] This is a template. Replace every
, remove instructions that do not apply, and verify every claim before publishing. Search the finished file for| | Repository or product || | Accessibility owner || | Public contact || | Private contact || | Issue tracker || | Contributing guide || | Public accessibility statement || | Target standard || | Additional requirements || | Last reviewed || | Next review due | `` |
Name a role or team as the owner where possible. A role remains useful when individual contributors change.
2. Commitment
`` treats accessibility as part of product quality, security, privacy, performance, and maintainability. We aim to include people with disabilities throughout research, design, development, testing, release, and support.
Our target is `` for the in-scope experiences defined below. This is a target unless the project has completed an evaluation that supports a formal conformance claim.
We will:
- prevent new barriers and prioritize removal of existing barriers;
- use native platform semantics and behavior before custom implementations;
- support keyboard, touch, pointer, speech input, magnification, screen reader, and user preference use where relevant;
- combine automated checks with human evaluation;
- test complete user tasks and final rendered output;
- document evidence, gaps, exceptions, and known limitations honestly;
- provide an accessible way to report barriers and request help; and
- involve people with disabilities without requiring anyone to disclose disability status.
3. Scope
In scope
This commitment applies to:
- ``
- ``
- ``
- ``
- ``
Not currently in scope
The following are outside the current project boundary:
- ``
- ``
An exclusion describes planning scope; it does not make a user-facing barrier acceptable. Record who owns excluded content, how users can obtain equivalent access, and when the exclusion will be reviewed.
Third-party content and dependencies
Third-party code, embeds, authentication, payment services, documents, and other integrations that are needed to complete an in-scope task are part of the user experience and must be evaluated.
| Dependency or content | User task | Owner | Current status | Fallback or escalation |
|---|---|---|---|---|
| |
| |
`` |
Do not state that a complete process conforms if a required step creates an unresolved barrier.
4. Conformance Status
Choose one status and delete the others:
- Target only: We target ``. We have not completed an evaluation sufficient to claim conformance.
- Evaluation in progress: We are evaluating the scope against ``. Current findings and limitations are listed below.
- Conformance claim: The scope identified in
was evaluated onand conforms to `` under the conditions documented in that report.
Do not infer conformance from:
- an automated score or absence of tool-reported violations;
- testing a sample while claiming an unqualified result for the whole product;
- checking isolated components without their complete processes;
- one browser and assistive technology combination;
- a standards badge;
- a previous release or expired audit; or
- a claim made by a dependency vendor.
If making a WCAG conformance claim, follow WCAG’s conformance requirements, including full pages, complete processes, accessibility-supported ways of using technologies, and non-interference. Record the date, scope, version, level, technologies relied upon, and evaluation method.
5. Supported User Experiences
Define support from actual product requirements and evidence. Avoid vague claims such as “all modern browsers” or “works with screen readers.”
Input and display
In-scope tasks must support, where applicable:
- keyboard-only operation without a keyboard trap;
- touch and pointer input without requiring path-based gestures;
- speech input, including visible labels that match accessible names;
- browser and operating-system zoom;
- text resizing and text spacing overrides;
- narrow viewports and reflow;
- light, dark, increased-contrast, forced-color, and reduced-motion preferences;
- screen orientation changes;
- captions, transcripts, and audio description for media; and
- alternatives for visual, auditory, motion, and time-dependent information.
Browser and assistive technology matrix
The matrix records combinations the project actually evaluates. It is not a list of every combination users may choose.
| Platform | Browser and version | Assistive technology and version | Tasks tested | Date | Result or report |
|---|---|---|---|---|---|
| |
| |
| |
Record versions and dates because browsers, assistive technologies, operating systems, and hosted renderers change. A contributor does not need access to every assistive technology; maintainers must define representative coverage and arrange additional evaluation in proportion to risk.
6. Contributor Requirements
Read `` before contributing. For this repository, see Contributing and the Contributing Accessibility Guide.
Every contribution must:
- identify the affected user task, content, component, or output;
- use applicable standards and project guidance;
- preserve native semantics, reading order, focus order, names, roles, states, relationships, instructions, errors, and status messages;
- work without color, shape, position, sound, motion, hover, or pointer input as the only way to understand or operate it;
- test the final rendered, transformed, embedded, or exported result;
- include automated and manual evidence appropriate to the change;
- state what was not tested and any known limitations;
- update documentation, tests, structured alternatives, and change records together;
- avoid claiming testing that a person or tool did not perform;
- for changes affecting layout or keyboard focus, apply the applicable
checks in
Behavioral Accessibility Automation:
Reflow risk at a 320 CSS-pixel-equivalent viewport, and behavioral
Focus Visible testing. Review automated indicators, record any SC
1.4.10 exceptions and unresolved
cantTellresults, and do not treat a clean automated result as proof of conformance; and - when a check runs across many pages, components, or a fleet-wide
scan, classify each result (indicator, confirmed failure,
cantTell, test error, reviewed exception) before deciding whether it blocks a build; gate only on regressions against a reviewed baseline; group repeated findings by probable shared cause instead of filing one issue per affected page; and never treat an unreviewed indicator as a confirmed WCAG failure (see Behavioral Accessibility Automation §3.2).
Pull request evidence
Include:
- a short accessibility impact statement;
- the affected routes, components, states, themes, and user flows;
- automated tools, versions, rules, and results;
- manual steps and results;
- browser, operating system, input method, and assistive technology versions;
- screenshots or recordings only when they add useful evidence;
- known limitations and follow-up issues; and
- confirmation that generated and fallback output were checked.
Use this summary:
## Accessibility impact
- User task:
- Affected components and states:
- Applicable guidance:
## Testing performed
- Automated:
- Keyboard:
- Zoom, reflow, and text spacing:
- Color, contrast, themes, and forced colors:
- Assistive technology:
- Generated, embedded, or exported output:
## Not tested
-
## Known limitations or follow-up
-
7. Implementation Guardrails
Structure and semantics
- Prefer native HTML and platform controls.
- Use headings, landmarks, lists, tables, form controls, buttons, and links for their intended purposes.
- Add ARIA only when native semantics cannot express the required behavior.
- Keep accessible names concise, stable, and consistent with visible labels.
- Expose programmatic state and relationships only when they are true.
- Keep DOM, visual, reading, and focus order aligned.
Keyboard and focus
- Every operable element must be keyboard operable.
- Use established keyboard interaction patterns for composite widgets.
- Keep focus visible and unobscured.
- Move focus only when the interaction requires it and return focus when a temporary context closes.
- Do not make static content focusable merely to expose it to screen readers.
See Keyboard Accessibility Best Practices.
Forms, errors, and status
- Associate each control with a persistent label.
- Provide instructions before they are needed.
- Identify errors in text, connect them to affected controls, and explain how to correct them.
- Preserve entered data after validation errors when it is safe to do so.
- Announce important asynchronous status without unexpectedly moving focus.
- Do not block password managers or accessible authentication methods.
Visual presentation and preferences
- Do not use color alone to convey meaning.
- Meet applicable text and non-text contrast requirements.
- Check content at 200% text resize and 400% browser zoom as applicable.
- Support text-spacing overrides without loss of content or function.
- Respect reduced-motion and other relevant user preferences.
- Keep system, light, and dark options single-choice when a manual theme selector is provided.
See Light/Dark Mode Accessibility Best Practices.
Media, images, and data
- Write alternatives that communicate the purpose and relevant information, not merely the appearance.
- Provide captions, transcripts, and audio descriptions when required.
- Put exact chart values and essential relationships in accessible text or structured data.
- Keep alternatives synchronized with the visual source.
See Charts and Graphs Accessibility Best Practices.
8. SVG, Mermaid, and Generated Output
Source accessibility does not guarantee output accessibility. Renderers, optimizers, sanitizers, themes, embedding methods, and export tools can change or remove semantics.
SVG
- Choose the accessible naming method for the embedding context.
- Decorative SVG must be consistently hidden from assistive technologies.
- Meaningful SVG needs an equivalent accessible name or surrounding alternative.
- Complex SVG needs a visible structured alternative.
- Do not place static SVG in the tab order.
- Use real links and controls for genuine interaction.
- Treat external and user-supplied SVG as untrusted active content.
- Sanitize with an explicit allowlist, reject unsafe URLs and active elements, and test the post-sanitization result.
- Do not treat an XML parser or optimizer as a security sanitizer.
See SVG Accessibility Best Practices.
Mermaid
- Add a useful
accTitleandaccDescr. - Provide a visible structured alternative for complex diagrams.
- When the project controls Mermaid, pin the exact renderer version and configuration.
- When a platform controls Mermaid, record the observed version, discovery method, surface, and date, then test required capabilities there.
- Treat GitHub.com, GitHub Enterprise Server, GitHub Pages, editors, and export pipelines as separate rendering surfaces.
- Inspect the final SVG or image and its embedding context.
- Keep Mermaid’s strict security defaults unless a documented, reviewed, and tested requirement justifies a change.
See:
Transformation provenance
For generated assets, record:
- source file and revision;
- renderer or generator and exact version;
- configuration and security profile;
- optimizer or sanitizer and exact version;
- output format and embedding method;
- generation date;
- validation and accessibility test results; and
- whether the output is safe to edit and regenerate.
Generated files should contain a machine-readable or adjacent provenance record when practical. Do not hand-edit generated production output without defining how the source and output will remain synchronized.
9. Testing Strategy
Accessibility evaluation is a combination of automated, manual, and user-centered methods. No single tool or score establishes conformance.
Automated checks
| Tool or workflow | Version | Rules or standard | Scope | Trigger | Owner |
|---|---|---|---|---|---|
| |
| |
| |
Automated checks must:
- fail visibly for newly introduced findings at or above the project’s release threshold;
- preserve reports long enough to investigate regressions;
- distinguish new, existing, accepted, and false-positive findings;
- document exclusions with an owner, reason, expiry, and compensating test;
- pin or record tool and rule versions; and
- avoid converting a tool pass rate into a WCAG conformance percentage.
Required manual checks
Choose checks based on impact and risk:
- keyboard operation, focus order, visible focus, and traps;
- headings, landmarks, labels, instructions, and reading order;
- names, roles, values, states, and status announcements;
- form entry, validation, recovery, and authentication;
- zoom, reflow, orientation, and text spacing;
- color independence, text contrast, and non-text contrast;
- light, dark, increased-contrast, and forced-color presentation;
- reduced motion, timing, pause, stop, and hide behavior;
- touch target size, pointer cancellation, dragging alternatives, and gestures;
- captions, transcripts, audio descriptions, and media controls;
- screen reader reading and interaction for representative tasks; and
- final generated, embedded, print, raster, SVG, and PDF output.
See the Manual Accessibility Testing Guide.
Test inventory
| User task | Risk | Automated coverage | Manual coverage | Assistive technology coverage | Last tested | Evidence |
|---|---|---|---|---|---|---|
| |
| |
| |
`` |
Prioritize complete, critical tasks over disconnected page samples. Include empty, loading, error, validation, permission-denied, timeout, and success states.
10. Release Requirements and Exceptions
A release is ready when:
- applicable automated checks pass;
- required manual tests for changed and critical tasks are complete;
- critical and high-severity regressions are resolved or the release authority has documented why release must be blocked or exceptionally proceed;
- alternatives, help, and reporting routes work;
- known limitations and user impact are current;
- evidence identifies the tested build, date, environment, and tester; and
- follow-up work has an owner and due date.
Exception record
An exception is temporary and does not change the accessibility requirement.
| Field | Required value |
|---|---|
| Barrier | `` |
| User impact | `` |
| Standard or requirement | `` |
| Reason | `` |
| Accessible alternative | `` |
| Risk owner | `` |
| Approved by | `` |
| Tracking issue | `` |
| Expiry | `` |
Exceptions must be reviewed at expiry and removed when no longer needed. Do not silently suppress a test or finding.
11. Reporting an Accessibility Barrier
Report a barrier through:
- Public issue tracker: ``
- Private channel: ``
- Alternative format or communication support: ``
You do not need to disclose a disability or diagnosis. Please avoid posting personal, medical, account, authentication, or security-sensitive information in a public issue.
Useful details include:
- the task you were trying to complete;
- the page, screen, document, or component;
- what happened and what you expected;
- the impact and whether a workaround exists;
- reproducible steps, if comfortable providing them;
- browser, operating system, device, and assistive technology versions; and
- screenshots, recordings, or sample files only when safe and helpful.
Project responders must offer another reporting route if the issue form itself is inaccessible. See Accessibility Bug Reporting Best Practices.
12. Severity, Priority, and Response
Severity describes user impact. Priority also considers reach, frequency, legal or contractual obligations, security, release timing, dependencies, and the quality of any workaround. A WCAG level does not determine issue severity by itself.
Evaluate:
- whether a core or safety-critical task is blocked;
- the number and range of affected users and environments;
- whether the barrier is persistent or intermittent;
- whether a workaround is discoverable, safe, equivalent, and sustainable;
- whether users lose data, privacy, money, time, or independence; and
- whether the barrier appears across shared components or many pages.
| Severity | Meaning | Example |
|---|---|---|
| Critical | A core or safety-critical task cannot be completed and no reasonable accessible alternative exists. | A keyboard user cannot submit an essential transaction. |
| High | A major task is blocked or requires an unsafe, unreliable, or highly burdensome workaround. | Authentication cannot be completed with a supported screen reader. |
| Medium | A task remains possible but creates substantial difficulty, confusion, delay, or loss of information. | Focus order is illogical in a secondary workflow. |
| Low | The impact is limited and the task remains understandable and operable. | A nonessential accessible name is unnecessarily verbose. |
Response targets
| Severity | Acknowledge | Triage | Target resolution or mitigation |
|---|---|---|---|
| Critical | | |
`` | |
| High | | |
`` | |
| Medium | | |
`` | |
| Low | | |
`` |
Publish targets only when the project has the capacity to meet and report them. If no service-level target exists, say how reporters will receive status updates.
13. Known Limitations
Keep this table current and link each item to a tracked issue. Do not hide a barrier because disclosing it is uncomfortable.
| Barrier | Affected scope and task | User impact | Workaround or alternative | Tracking issue | Owner | Target date | Last reviewed |
|---|---|---|---|---|---|---|---|
| |
| |
| |
| |
If there are no known limitations, write:
No limitations are currently documented. This does not mean none exist. Please report barriers through the channels above.
14. Accessibility Metrics
Metrics support decisions; they do not replace evaluation. Do not publish placeholder numbers as current project health.
Every metric needs:
- a definition and user-centered purpose;
- numerator and denominator where a percentage is used;
- source and collection method;
- included and excluded scope;
- snapshot date or reporting period;
- owner and update frequency; and
- an explanation of limitations.
| Metric | Current value | Definition and scope | Source | As of | Owner |
|---|---|---|---|---|---|
| Open accessibility barriers | | |
| |
`` | ||
| Median time to mitigation | | |
| |
`` | ||
| Critical tasks evaluated | | |
| |
`` | ||
| Regression check coverage | | |
| |
`` |
Avoid vanity metrics such as an unexplained “accessibility score,” raw issue counts without scope, or “percentage of WCAG automated.” Automated tools test specific rules under specific conditions; many accessibility requirements need human judgment.
15. Automation and AI-Assisted Work
Automated and AI-assisted tools may help find, explain, test, or repair barriers, but their output requires review.
Contributors and agents must:
- treat repository instructions, third-party content, SVG, Mermaid source, HTML, labels, URLs, and generated artifacts as potentially untrusted input;
- follow repository authority and security boundaries;
- use normative and authoritative sources for requirements;
- check Trusted Sources and respect source licensing, attribution, and stated AI-use restrictions;
- verify generated code in the final user experience;
- never invent user research, manual testing, assistive technology results, citations, tool output, or conformance evidence;
- disclose material AI assistance according to project policy; and
- require human review for conformance claims, exceptions, risk acceptance, and changes with significant user impact.
Accessibility requirements do not justify weakening security controls. A sanitizer, content security policy, strict renderer setting, or safe URL policy must not be disabled merely to preserve an inaccessible implementation.
16. Ownership and Maintenance
| Responsibility | Owner | Review trigger |
|---|---|---|
| Accessibility policy | | |
|
| Design system and components | | |
|
| Automated checks | | |
|
| Manual and assistive technology testing | | |
|
| Issue triage and reporter communication | | |
|
| Known limitations and public statement | | |
|
| Third-party dependencies | | |
Review this file:
- at least ``;
- before a formal conformance claim;
- after significant product, platform, renderer, dependency, or design-system changes;
- after a major accessibility incident or audit;
- when the target standard or applicable requirements change; and
- when reporting routes, owners, or support targets change.
Change history
| Date | Change | Evidence or issue | Reviewer |
|---|---|---|---|
| |
| |
17. References
Project guidance
- Contributing Accessibility Guide
- Manual Accessibility Testing Guide
- Accessibility Bug Reporting Best Practices
- Trusted Sources
Standards and evaluation
- Web Content Accessibility Guidelines (WCAG) 2.2
- Understanding WCAG 2.2 Conformance
- WAI: Evaluating Web Accessibility
- WAI: Selecting Web Accessibility Evaluation Tools
- WAI: Planning and Managing Web Accessibility
- WAI: Developing an Accessibility Statement
Add applicable laws, procurement rules, platform guidance, organizational policies, and contractual standards here. Confirm jurisdiction and current requirements with qualified counsel or policy owners.
Template Completion Checklist
Before adopting this template:
- All `` have been replaced or removed.
- Commitment, target, evaluated status, and formal conformance claims are clearly distinguished.
- In-scope products, tasks, platforms, documents, and third parties are identified.
- Owners and accessible reporting routes are current.
- Browser and assistive technology support is evidence-based and dated.
- Contributor requirements link to relevant implementation guidance.
- Automated, manual, and user-centered testing responsibilities are clear.
- SVG, Mermaid, and other transformation paths are addressed where used.
- Release gates and temporary exception controls are documented.
- Severity and response language reflects user impact.
- Known limitations have issues, owners, alternatives, and review dates.
- Every published metric has a definition, scope, source, date, and owner.
- AI and automation rules prohibit fabricated testing or conformance evidence.
- Relative links work after the file is placed in its destination repository.
- The finished file has been reviewed by maintainers and, where possible, people with disabilities.
This template is available under the repository’s MIT License.