Make the trainer genuinely usable with a screen reader. This is the part of
accessibility that automated tooling cannot check, so it needs its own issue and
manual testing.
Axe already runs against every view in both themes in CI. Axe cannot see any of
what follows.
The problem this solves
A typing trainer is close to the worst case for a live region. Announcing every
keystroke produces a firehose that makes the app unusable; announcing nothing
leaves a screen reader user with no idea where they are.
Acceptance criteria
Manual testing required
Tested with at least VoiceOver on macOS and NVDA on Windows. The checklist in
docs/accessibility.md is the acceptance criteria; tick it off in the pull
request and say which assistive technology and version you used.
Tests this unblocks
- End-to-end: announces the current word and the result, but not every
keystroke. That test can only check the regions and their politeness, not
whether the result is actually usable. The manual pass is the real test.
Help wanted
If you use a screen reader and would be willing to try this, that feedback is
worth more than anything the tooling can tell us.
Make the trainer genuinely usable with a screen reader. This is the part of
accessibility that automated tooling cannot check, so it needs its own issue and
manual testing.
Axe already runs against every view in both themes in CI. Axe cannot see any of
what follows.
The problem this solves
A typing trainer is close to the worst case for a live region. Announcing every
keystroke produces a firehose that makes the app unusable; announcing nothing
leaves a screen reader user with no idea where they are.
Acceptance criteria
reverse.
key, the finger and the row.
prefers-reduced-motion: reduceremoves every transition and anycelebratory animation.
Manual testing required
Tested with at least VoiceOver on macOS and NVDA on Windows. The checklist in
docs/accessibility.mdis the acceptance criteria; tick it off in the pullrequest and say which assistive technology and version you used.
Tests this unblocks
keystroke. That test can only check the regions and their politeness, not
whether the result is actually usable. The manual pass is the real test.
Help wanted
If you use a screen reader and would be willing to try this, that feedback is
worth more than anything the tooling can tell us.