Accessibility conformance
Version 1.12 · Updated Oct 31, 2026
Tapsity aims at WCAG 2.1 Level AA. This page says what has been checked, how, and what has not.
Conformance claim
Partially conformant with WCAG 2.1 Level AA. Automated testing finds 0 violations on 111 screen states, and 53 driven checks run the product from the keyboard alone. It has not been tested with screen-reader users yet, and known gaps are open.
How it was tested
- Automated
- An automated checker, with the WCAG 2.1 A and AA rules, on 111 screen states: every page of the app with its dialogs and open panels, the AI Assistant's panel, the podium, the projector, the student page in each of its states, and every page of this site. The instructor's main pages are scanned in both the light and the dark theme. The questions scanned carry inline math, a figure, a formula, a code listing, a diagram, a graph and a molecule, drawn as the room sees them. Current result: 0 violations.
- Drawings
- The checker does not measure contrast inside a drawing, so each diagram, graph and molecule on a scanned screen is measured against its ground, in both themes.
- Keyboard, driven
- 53 checks that operate the product rather than inspect it. For each kind of question, focus moves to it when it arrives, and a student reaches the options with Tab, chooses with Space or the arrow keys, says how sure they are and sends the answer with Enter. On the podium, the arrow keys move between questions, Page Down does so from the projector's window, an arrow pressed inside a formula leaves the room where it is, Blank screen and Show results are reached with Tab and pressed with Enter, and every Tab stop has a name. The AI Assistant opens with Ctrl+/ and sends with Enter. Current result: 0 failures.
- Pages
- Every view has a title of its own, and every page of this site opens without signing in.
- The stage
- On the projector, the podium and the open room, nothing may fall past the edge of the window, since no one at a podium can scroll it.
- Layout, measured
- 99 checks that a screen fits a window 320 pixels wide and one at phone size turned on its side, and loses no text to the wider spacing of 1.4.12: every page of this site, the app's main pages, and the student page for each kind of question. Current result: 0 failures.
- Reviewed by hand
- Criteria that need judgement, such as whether a heading describes its section or an error says what to do. They are marked By design below.
- Not done yet
- A test with screen-reader users.
The audit runs before every deploy of this site and of the app, and a failure stops the deploy. Its report is available on request.
How each control works
- A question
- Focus moves to a new question when it arrives, so a screen reader reads it out. Its options are a group of radio buttons, one Tab stop, and the arrow keys move between them. A question that takes every answer that applies uses checkboxes, one Tab stop each. A chosen option gets a thicker border as well as a colour. A question with no right answer is the same control. There are no sliders.
- How sure are you
- A group of radio buttons of its own, Guessing, Unsure and Confident, with its own Tab stop. A chosen level gets the same thicker border as a chosen option.
- The podium
- Run from the keyboard or a presentation clicker. → ↓ and Page Down go to the next question, and ← ↑ and Page Up go back, also when pressed in the projector's window. On the podium, none of them moves the room while focus is inside a question's formula or code listing, where the arrow keys scroll it. Blank screen, Show results and every other control are reached with Tab.
- Formulas, code, diagrams, graphs and molecules
- Formulas also carry MathML, which screen readers read. Every diagram, graph and molecule carries a description written from its source, which the instructor can edit, and an image cannot be saved without one. Code stays text. A block that cannot be drawn on a device shows its source and its description, never a blank.
- Reordering
- A lecture's questions are reordered with Move up and Move down, in each question's menu. Lectures can be dragged into a new order in the syllabus with a mouse, and Reorder lectures, beside the syllabus heading, does the same by keyboard or touch with Move up and Move down.
- Dialogs
- A dialog keeps focus inside, closes with Escape and returns focus to what opened it.
Criteria assessed
Every Level A and AA criterion of WCAG 2.1 is listed here, 50 in all. Verified means an automated or a driven test checks it on every run. By design means it was built for and reviewed by hand. Partly met means part of it is not met yet, and the row says which. Not applicable means it asks nothing of Tapsity.
- 1.1.1 Non-text Content
- Verified. Icons that carry meaning have text, and decorative ones are hidden from screen readers.
- 1.2.1 Audio-only and Video-only (Prerecorded)
- Not applicable. Tapsity plays no audio or video, and a question cannot carry either.
- 1.2.2 Captions (Prerecorded)
- Not applicable. Tapsity has no video.
- 1.2.3 Audio Description or Media Alternative (Prerecorded)
- Not applicable. Tapsity has no video.
- 1.2.4 Captions (Live)
- Not applicable. Tapsity carries no live audio. The lecture itself happens in the room.
- 1.2.5 Audio Description (Prerecorded)
- Not applicable. Tapsity has no video.
- 1.3.1 Info and Relationships
- Verified. Landmarks, headings, lists, groups of options and their legends are real elements.
- 1.3.2 Meaningful Sequence
- By design. Each page reads in the order it is shown, and a layout that folds into one column keeps that order.
- 1.3.3 Sensory Characteristics
- By design. No instruction depends on shape, colour, position or sound. Controls are referred to by the words they show.
- 1.3.4 Orientation
- Verified. No page is locked to one orientation, and the pages measured work turned on their side.
- 1.3.5 Identify Input Purpose
- By design. The two fields that ask for an email address tell the browser so, and it can fill them in. No other field asks about the person using it.
- 1.4.1 Use of Color
- By design. The right answer is marked with a badge, a check and the word Correct. Anything chosen on the student page gets a thicker border as well as a colour.
- 1.4.2 Audio Control
- Not applicable. Nothing in Tapsity plays sound.
- 1.4.3 Contrast (Minimum)
- Verified. Text is at 4.5:1 or more, and large text at 3:1, on every screen scanned.
- 1.4.4 Resize text
- Partly met. Text on every page grows to 200% with the browser's zoom, and the page reflows to fit. The projector sizes its text to the screen it fills, so zoom does not enlarge it there. Each student reads the same question on their own device, at the size they choose.
- 1.4.5 Images of Text
- By design. Tapsity's own words are text, and formulas, code, diagrams, graphs and molecules are drawn from their source rather than shown as pictures. An image an instructor adds is theirs, with the description they write.
- 1.4.10 Reflow
- Verified. The pages measured fit a window 320 pixels wide without scrolling sideways, and a code listing wider than that scrolls inside its own box. The projector keeps the shape of the screen it fills, as a layout read in two dimensions may.
- 1.4.11 Non-text Contrast
- By design. Control edges, focus outlines and the colours in diagrams, graphs and molecules are drawn at 3:1 or more, and drawings are measured.
- 1.4.12 Text Spacing
- Verified. With the wider line, letter, word and paragraph spacing this criterion sets, no text on the pages measured is cut off. Text shortened to fit with an ellipsis is shown in full elsewhere: a lecture's name on its own page, and a question in a report's summary further down the report.
- 1.4.13 Content on Hover or Focus
- Verified. Words shown on hover or focus stay while the pointer is over them, and close with Escape. The driven test checks this on the syllabus.
- 2.1.1 Keyboard
- Verified. Every kind of question is answered with the keyboard alone, and the podium is run from it.
- 2.1.2 No Keyboard Trap
- By design. Dialogs close with Escape and return focus to what opened them.
- 2.1.4 Character Key Shortcuts
- By design. No shortcut is a character key alone. The podium takes the arrow keys and Page Up and Page Down, and the AI Assistant opens with Ctrl+/ (⌘/ on a Mac).
- 2.2.1 Timing Adjustable
- Partly met. A question stays open as long as the instructor keeps it open, which is the live activity itself, and a room left idle for three hours closes and keeps its results. Not yet met: the sign-in ends after 12 hours with no warning, and Undo is offered for ten seconds after a question is removed from a lecture. The question stays in the bank, where it can be added back.
- 2.2.2 Pause, Stop, Hide
- By design. Nothing animates in a loop. Live counts change while a question is open, which is the activity itself. With reduced motion set, transitions are cut.
- 2.3.1 Three Flashes or Below Threshold
- By design. Nothing on any page flashes.
- 2.4.1 Bypass Blocks
- Verified. Every page has a main landmark.
- 2.4.2 Page Titled
- Verified. Every view sets a title of its own.
- 2.4.3 Focus Order
- Verified. Focus follows the reading order. Each group of options is one Tab stop. When a page opens, focus moves to its heading, unless it is still on the link that opened the page, which then announces it. The driven test checks both.
- 2.4.4 Link Purpose (In Context)
- Verified. Every link has a name, which the checker confirms, and says where it goes, alone or with the sentence around it.
- 2.4.5 Multiple Ways
- By design. A page of this site is linked from its footer, and from its menu or the policies page. In the app, a page is reached from the syllabus or Today, and from the pages that list it.
- 2.4.6 Headings and Labels
- By design. Headings say what their section holds, and labels say what a field asks for.
- 2.4.7 Focus Visible
- By design. Every control shows a focus outline.
- 2.5.1 Pointer Gestures
- By design. Nothing needs a drawn path or two fingers. Lectures can be dragged into order with a mouse, and Reorder lectures does the same with single taps or the keyboard.
- 2.5.2 Pointer Cancellation
- By design. Every control acts when the pointer is released, not when it is pressed.
- 2.5.3 Label in Name
- By design. A control's name contains the words it shows. A card is named by its first line, and a report's small picture of a question shows its name on hover and focus.
- 2.5.4 Motion Actuation
- Not applicable. Nothing responds to moving or tilting the device.
- 3.1.1 Language of Page
- Verified. Every page states its language, which follows the language chosen, and the checker confirms it.
- 3.1.2 Language of Parts
- By design. A question and its options are marked with the language they were written in, so a screen reader reads them in that language on a device set to another.
- 3.2.1 On Focus
- By design. Moving focus to a control never opens a page, sends anything or moves focus on.
- 3.2.2 On Input
- By design. Choosing an option or typing never opens a page or sends anything. A student's answer is sent only with Send answer.
- 3.2.3 Consistent Navigation
- By design. The app's syllabus and this site's menu and footer appear in the same place and order on every page.
- 3.2.4 Consistent Identification
- By design. A control that does the same thing has the same name everywhere.
- 3.3.1 Error Identification
- By design. An error says what happened in words, is announced, and is tied to its field where it has one.
- 3.3.2 Labels or Instructions
- Verified. Every input has a label.
- 3.3.3 Error Suggestion
- By design. An error that has a fix says what it is: a question that cannot be saved lists what to change.
- 3.3.4 Error Prevention (Legal, Financial, Data)
- By design. A purchase is reviewed in Paddle's checkout before it is paid. Deleting the account asks first, and signing back in before the account is erased cancels it. Questions and lectures are archived rather than deleted, and a student chooses an answer before sending it.
- 4.1.1 Parsing
- Not applicable. W3C's 2023 correction to WCAG 2.1 counts this criterion as always met by HTML.
- 4.1.2 Name, Role, Value
- Verified. Every control has a name, and says whether it is chosen.
- 4.1.3 Status Messages
- By design. The connection state on the podium and the student page, the AI Assistant's progress and errors are announced through live regions.
Known gaps
- No test with assistive-technology users
- No one has yet taught a lecture on Tapsity with NVDA, JAWS or VoiceOver in use. This is the largest gap in the claim.
- Criteria met in part
- 1.4.4 Resize text and 2.2.1 Timing Adjustable. Criteria assessed says what falls short.
- Hotspot questions
- Questions that ask a student to tap a region of an image were removed rather than shipped without an accessible design. A question may still show an image, and answers are always chosen from options.
Reporting a problem
If any part of Tapsity does not work for you, write to support@tapsity.com with the screen and the assistive technology you use. An accessibility defect is treated as a product defect, and a student who cannot answer a question is treated as an outage.
Questions about this document, or requests about your own data: contact@tapsity.com.