Email Dean
Menu

Portfolio  /  One Task, Start to Finish  /  Working documents

Process artifact

Accessibility report

What was tested by keyboard, by automated scan and on the PDFs, what was fixed in Rise, and the limits that sit in Rise itself.

Download as .md Case study

Date: 2026-10-13. Tested on the Rise web export, served locally, and in the Rise preview. The packages on this site were exported after the fixes below. Target: WCAG 2.2 AA where Rise allows it.

What was tested

Check How Result
Keyboard only Completed the whole course with Tab, Shift+Tab, arrows, Space and Enter: hook question, both sorting activities, every knowledge check (single and multiple response), tabs, process block, attachments, final quiz, survey Pass: 100% complete without a mouse
Focus Checked where focus lands after each action Visible focus ring throughout; a new lesson puts focus on its title; feedback gets focus after Submit in lesson checks; quiz Submit moves focus to Next; Take again returns focus to the first choice
Automated scan axe-core 4.10.2 (WCAG 2.0/2.1/2.2 A and AA plus best practice) on every lesson after scrolling each one fully into view 1 serious finding (fixed, see below); the rest are in Rise's own code
Screen-reader output Read the live regions and accessible names that a screen reader announces after each answer 2 findings (fixed); 1 Rise bug (see limits)
PDFs pdfinfo -struct-text for tags and reading order; checked /Lang, title, DisplayDocTitle Tagged, titled, /Lang en, logical order; 1 finding (fixed)
VoiceOver Not yet run by a person Next

Fixed

  1. Link and score text contrast. The theme color (Rise's Tangerine, #FF631E) was 2.97:1 on white, below 4.5:1. It colored the claude.ai/download link and the quiz score. Theme color changed to #C2410C: 5.17:1 on white, 4.75:1 on the quiz's gray. Buttons now use white text on it (5.18:1). On 2026-10-16 Dean chose a teal instead, #25737E (his #2F93A1 darkened until it passed): 5.48:1 on white, 5.48:1 for white text on it; measured in the re-exported course on the cover title and the quiz's Start button. The same day the 13 practice-section blocks (lessons 1 to 6) moved from the warm #FBF1ED tint to a light teal, #E8F5F7, so the sections match the theme: theme-color link text measures 4.91:1 on it and black body text 18.8:1.
  2. Straight double quotes read as ". Rise double-escapes " in the text it announces after an answer, so VoiceOver would read "ampersand quot". Every answer choice and feedback line with " now uses curly quotes (“ ”): lesson 4's first check, all four lesson 5 checks, quiz Q5 and Q8. Rechecked: the announcement now reads cleanly.
  3. Quiz Q5 and Q8 data. The right answer was stored in one field and an old answer in two others, so the announcement named the vague choice as "Your answer" when the learner was right. Each question's right answer now sits in the slot all three fields point to. All 10 questions verified consistent.
  4. Lesson 3 list numbering. The second list restarted at 1 (heard as a separate list). It now starts at 3, continuing the steps.
  5. PDF bold text. Chrome tagged "Each time:" as a PDF 2.0 Strong element that older readers skip. Rebuilt both PDFs with a styled span; "Each time:" is now in the tag tree. The job aid also gained step 4's new line ("If nothing was off, run the task on a new case and check it the same way.").

Step 3 Code block practice (added 2026-10-15)

The permission-prompt practice in step 3 is custom HTML and JavaScript in a Rise Code block, so it was tested on its own:

  • Keyboard only: every control is a real button. Tab reaches Deny, Always allow and the menu button; Enter opens the menu and moves focus to Allow once; Escape closes it and returns focus. After a choice, focus moves to the feedback, and after Next prompt, to the new prompt's title.
  • Screen reader text: the path is announced as a path, and each line of the change is announced with "Added" or "Removed" first. The feedback names the choice that was made.
  • axe 4.10.2 on the block in four states (first prompt, menu open, right and wrong feedback): no violations apart from "page has no level-one heading", which the lesson supplies around the block.
  • At 390 pixels wide the block doesn't scroll sideways: the shortcut keys hide and long lines wrap.
  • Completion: the block tells Rise when all three prompts are answered right, and the Continue below it stays locked until then. Checked in the web export.

Known limits (Rise's code, can't be changed in the course)

  • The quiz announcement always says "Your answer:" followed by the correct answer, even when the learner chose wrong. Lesson knowledge checks announce the real choice.
  • Rise's previous/next lesson links sit outside a page landmark (axe "region", moderate) on every lesson.
  • Knowledge-check wrappers carry an aria-label on a div with no role (axe "needs review").
  • A Continue set to "complete all blocks above" unlocks only after the text above it scrolls into view. Keyboard users can scroll with arrows or Page Down, but Tab alone jumps back to the top of the page (lesson 3).
  • Restricted navigation hides later lessons in the menu, but a typed lesson address still opens them.

Not yet tested

A screen reader run by a person. A VoiceOver pass on the draft check in step 3 and its feedback is next.