Skip to content

Accessibility Conformance Report: Action Stations

VPAT 2.5 Rev, Revised Section 508 Edition (WCAG 2.2 Level A and AA, Revised 508 Chapters 3, 5 and 6)

Product Action Stations (machine name actionstations)
Version evaluated 0.6.2
Report date 2026-11-02
Product description A local-first desktop application (Electron) that generates tabletop exercises, with a phone, tablet or laptop web page for live-play participants and exported PDF, Word and Excel documents
Contact for accessibility problems Open an issue at github.com/actionstations-ai/actionstations
Template ITI VPAT 2.5 Rev (508 edition). This is the vendor’s own evaluation, not a third-party audit.

Scope: three products evaluated separately

Section titled “Scope: three products evaluated separately”
Product What it is How it was checked
Desktop app The Electron application on Windows, macOS and Linux (the renderer, a React web UI in a Chromium window) Automated accessibility tests of every screen, scripted keyboard and layout checks, color contrast check
Player page The web page participants open in a browser during live play (served by the facilitator’s computer or a relay) Automated accessibility tests of every screen, in light and dark
Exported PDFs PDFs the app writes: briefing, handouts, player injects, MSEL, inject deck, handbook, EEG packet, survey forms, AAR/IP, inject media PDFs, and large-print copies Tagged-PDF output on every export, structure checks; see the Translation and accessibility guide

Word (.docx) and Excel (.xlsx) exports, the project website, and the guides are not evaluated in this report (see “Not evaluated” at the end).

  • Supports: the functionality meets the criterion with no known defects, on the evidence listed.
  • Partially Supports: some functionality does not meet the criterion, or the criterion has only been partly evaluated. The remarks say which.
  • Does Not Support: the majority of functionality does not meet the criterion.
  • Not Applicable: the criterion is not relevant to the product.
  1. Automated: axe-core accessibility tests, with the tags wcag2a, wcag2aa, wcag21a, wcag21aa, wcag22aa and best-practice.
    • Desktop: an automated test audits every screen in light and dark mode against a seeded project (documents, a scenario with rendered injects, packs, live connection, settings) and fails on any violation.
    • Desktop: a second automated test covers the criteria axe cannot test (text spacing, content on hover or focus, focus not obscured, pointer cancellation, dragging alternatives, target size, consistent help) on 16 screens.
    • Player page: an automated test audits every screen in light and dark, on a phone viewport, at 100 % and 200 % zoom, plus the end screen.
  2. Scripted keyboard and layout checks alongside those tests: visible focus on every tab stop, no keyboard traps, dialogs take focus, close on Escape and return focus, a keyboard-only walkthrough (new project to export; for the player page, joining), a 200 % zoom check that no control is clipped or unreachable, no horizontal scroll, and targets of at least 24 px on the player page. Empty and error states are checked for next-step text.
  3. Contrast check: a script tests every design-token color pair the renderer’s stylesheets use, in light and dark, at 4.5:1 for text and 3:1 for UI boundaries and focus rings. The player page imports the same tokens.
  4. PDF checks: Chromium’s tagged-PDF output is switched on for every export. An automated test checks the language tag and tagged structure of the Spanish packet, injects and survey form. A script can run veraPDF (PDF/UA-1) on exported PDFs when veraPDF is installed. No veraPDF run is recorded, so PDF/UA conformance is not claimed.
  5. Design review of the accessibility requirements for the player page and for player translation.

Not done: no recorded testing with a screen reader (NVDA, JAWS, VoiceOver, Narrator), screen magnifier, speech-recognition software or switch device; no usability testing with people with disabilities; no third-party audit. Automated tools find only part of the WCAG failures, so “Supports” below means “no defect found by the checks above and none known”, not “verified with assistive technology”.

Item Product Criteria Status
Exported PDFs are fixed-layout pages (Letter size). They do not reflow at 320 px or 400 % zoom. A large-print copy (18 pt, one column) is offered for the briefing, handouts and player injects only. Exported PDFs 1.4.4, 1.4.10 By design.
PDF/UA conformance has not been tested. Text generated by CSS (page numbers, the stamp) is not tagged. Running headers and footers are page text and may be read on every page. Exported PDFs 1.3.1, 4.1.2, 504.2.2 Known limits of Chromium’s PDF writer.
AI-generated video clips have no audio description. Video has captions only when the inject has voice lines. Player page, desktop, media 1.2.2, 1.2.3, 1.2.5 Open.
No person has tested the desktop app, the player page or the PDFs with a screen reader and recorded the result. The Translation and accessibility guide asks users to check a packet with VoiceOver or NVDA. All Several; see the tables Open.
Map pin placement is by clicking the plan; a keyboard alternative has not been checked. Desktop app 2.1.1, 2.5.1 Not evaluated.
The app’s own screens are English only. Player material (briefing, handouts, injects, participant surveys) can be exported in Spanish after a person reviews the translation. All None (3.1.1 and 3.1.2 are met) Listed for buyers who need other interface languages.

Desktop = desktop app, Player = player page, PDF = exported PDFs.

Criterion Desktop Player PDF Remarks
1.1.1 Non-text Content Partially Supports Supports Supports Desktop: axe passes on every audited screen; the label of a generated photograph is only as good as the text the user supplies. Player: every image inject has its exact text in a collapsed Text version that screen readers read as the description. PDF: each inject picture has a short alt and its words follow as real text. Text-bearing media is template-rendered, so the text exists in the source.
1.2.1 Audio-only and Video-only (Prerecorded) Partially Supports Partially Supports Not Applicable Audio injects have a transcript on the player page. Video-only clips have no text alternative of their own beyond the inject’s text version.
1.2.2 Captions (Prerecorded) Partially Supports Partially Supports Not Applicable Video has captions when the inject has voice lines. Clips without voice lines are silent. Not every generated clip has been checked.
1.2.3 Audio Description or Media Alternative (Prerecorded) Partially Supports Partially Supports Not Applicable A text version of each inject is provided as a media alternative. There is no audio description track.
1.3.1 Info and Relationships Supports Supports Partially Supports Desktop and player: axe passes; landmarks, headings, labels, tablists and live regions are in use. PDF: tagged; one level-1 heading, headings in order, table column headers, lists as lists. CSS-generated text is untagged; PDF/UA not run.
1.3.2 Meaningful Sequence Supports Supports Partially Supports The keyboard walkthrough follows visual order. PDF reading order comes from Chromium’s tagging and has not been checked with a screen reader.
1.3.3 Sensory Characteristics Supports Supports Supports Instructions name controls by label. Statuses are given in words (for example clock status “due soon”, “overdue”).
1.4.1 Use of Color Supports Supports Partially Supports Selected list items use a highlight with an accent bar, and the domain picker also shows a check. Not every exported document template has been reviewed for color-only meaning.
1.4.2 Audio Control Supports Supports Not Applicable Audio does not play by itself on the player page. In the desktop app, playback starts on a user action.
2.1.1 Keyboard Partially Supports Supports Not Applicable The keyboard-only walkthrough from new project to export passes, and joining the player page by keyboard alone passes. Pointer-driven features (map pins and similar) have not been checked for a keyboard equivalent.
2.1.2 No Keyboard Trap Supports Supports Not Applicable Tested on every tab stop; dialogs close on Escape.
2.1.4 Character Key Shortcuts Supports Supports Not Applicable Single-key shortcuts (Space, N, D) in Facilitate can be switched off with Single-key shortcuts, and never fire while typing.
2.2.1 Timing Adjustable Supports Supports Not Applicable No interface time-outs on user input. Exercise clocks are exercise content. The player page reconnects by itself after sleep.
2.2.2 Pause, Stop, Hide Supports Supports Not Applicable The only moving content is the exercise clock and the live feed; the feed announces politely and reduced motion is honored. Pausing the clock is a facilitator control.
2.3.1 Three Flashes or Below Threshold Partially Supports Partially Supports Not Applicable No flashing content in the interface. Generated video clips have not been analyzed for flashes.
2.4.1 Bypass Blocks Supports Supports Partially Supports Skip to main content is the first Tab stop in the desktop app. Bookmarks and navigation inside PDFs are not evaluated.
2.4.2 Page Titled Supports Supports Supports The window title names the current page. Every exported PDF sets a title.
2.4.3 Focus Order Supports Supports Not Applicable After following a link focus moves to the new page’s heading; dialogs return focus to the opener. Tested.
2.4.4 Link Purpose (In Context) Supports Supports Partially Supports Axe link-name rules pass. Links inside PDFs are not evaluated.
2.5.1 Pointer Gestures Partially Supports Supports Not Applicable The player page uses taps and buttons only. Desktop map interactions have not been checked.
2.5.2 Pointer Cancellation Partially Supports Partially Supports Not Applicable Desktop: tab and menu triggers act on press; they only change the view and are reversed by selecting again. All other controls act on release (12 buttons and links on each of six screens, tested). Player: standard controls act on release in Chromium; no test verifies this.
2.5.3 Label in Name Supports Supports Not Applicable Axe label-content-name-mismatch is part of the best-practice set audited.
2.5.4 Motion Actuation Not Applicable Not Applicable Not Applicable No feature is operated by device motion.
3.1.1 Language of Page Supports Supports Supports The page language is set. Every exported PDF sets the document language, including Spanish.
3.2.1 On Focus Supports Supports Not Applicable No context changes on focus in audited screens.
3.2.2 On Input Supports Supports Not Applicable Form changes need an explicit action.
3.2.6 Consistent Help Supports Partially Supports Not Applicable Desktop: the Glossary is the one help mechanism that repeats across screens. A test finds it first in the page header actions on every screen that has it. Player: help sits in the same place in the screens reviewed; no test or full review covers every screen.
3.3.1 Error Identification Supports Supports Not Applicable Errors say what went wrong and what to try, with Retry where it applies; covered by the empty and error state test.
3.3.2 Labels or Instructions Supports Supports Not Applicable Axe label rules pass on all audited screens.
3.3.7 Redundant Entry Supports Supports Not Applicable The player join flow does not ask twice for anything. The desktop app has not been reviewed for repeated entry beyond that.
4.1.1 Parsing Supports Supports Not Applicable Obsolete in WCAG 2.2. Axe duplicate-id rules pass.
4.1.2 Name, Role, Value Supports Supports Partially Supports Axe ARIA rules pass; Radix primitives are used for dialogs and tabs. PDF: survey forms are printable pages and are not tested as fillable form fields.
Criterion Desktop Player PDF Remarks
1.2.4 Captions (Live) Not Applicable Not Applicable Not Applicable No live synchronized audio or video is provided.
1.2.5 Audio Description (Prerecorded) Does Not Support Does Not Support Not Applicable Generated video clips have no audio description track. A text version of the inject is provided.
1.4.3 Contrast (Minimum) Supports Supports Partially Supports scripts/check-contrast.mjs checks every token pair in light and dark; axe color-contrast passes in both themes. PDF: large-print copies are black on white; contrast of the regular packet templates has not been measured.
1.4.4 Resize Text Supports Supports Partially Supports The 200 % zoom check passes with no clipped or unreachable controls (since fixed). The player page has a text-size setting. PDF: fixed pages; a large-print copy is provided for player documents.
1.4.5 Images of Text Supports Supports Partially Supports Text-bearing injects (tweets, tickets, emails, logs, boards) are rendered from templates, and each picture is followed by the same words as real text. Pictures of text stay in the inject deck and player injects because the look is the point of the inject.
1.4.10 Reflow Supports Supports Does Not Support Desktop: the sidebar folds behind Menu below about 830 px; page header actions and settings rows wrap; wide tables scroll inside labelled regions. The Room tab stacks its tables in the side panel; an overlap check runs at 1280×800, 1024×768 and 960×640. Player: tested at 320 px with no horizontal scroll. PDF: fixed-layout pages.
1.4.11 Non-text Contrast Supports Supports Partially Supports The contrast script covers UI boundaries and focus rings at 3:1. PDF: graphics and form-field borders in the exports were not measured.
1.4.12 Text Spacing Supports Partially Supports Not Applicable Desktop: a test applies the WCAG text-spacing overrides (line height 1.5, letter spacing 0.12 em, word spacing 0.16 em) on 16 main screens and finds no newly clipped, overlapping or lost text. Player: no text-spacing override test was run.
1.4.13 Content on Hover or Focus Supports Not Applicable Not Applicable Desktop: hovering or focusing the first controls on 16 screens shows no tooltip or popup. The Glossary popover opens on click, stays open when the pointer moves onto it or away, and closes with Esc, returning focus to its button. Title text on controls is the browser’s own tooltip. The player page has no hover content.
2.4.5 Multiple Ways Supports Supports Not Applicable Desktop: sidebar navigation and project search. Player: bottom tabs or left rail, and the More list.
2.4.6 Headings and Labels Supports Supports Supports One level-1 heading per page and per PDF; labels describe purpose.
2.4.7 Focus Visible Supports Supports Not Applicable Tested on every tab stop, in both themes.
2.4.11 Focus Not Obscured (Minimum) Supports Partially Supports Not Applicable Desktop: tabbing through 16 screens, and through the MSEL after a row action, never leaves the focused control fully hidden behind another element. Notifications appear at the bottom left of the desktop window, away from primary buttons. Player: not tested.
2.5.7 Dragging Movements Supports Supports Not Applicable Desktop: the MSEL grid offers Move up and Move down in each row’s actions menu beside the drag handle; the site plan has Pan buttons beside dragging; file drop areas have Import documents and Install from file buttons. The player page has no dragging.
2.5.8 Target Size (Minimum) Supports Supports Not Applicable Desktop: a test measures every button, link, field, tab and radio or checkbox on 16 screens; each is at least 24 by 24 px or has no other target within the 24 px circle. The export checkboxes were 13 px and are now 24 px. Player: an automated check fails on any target under 24 px; primary actions are 44 px.
3.1.2 Language of Parts Supports Supports Supports Spanish items are marked with their language in the review screen and in the Spanish PDFs.
3.2.3 Consistent Navigation Supports Supports Not Applicable Same navigation order on each screen.
3.2.4 Consistent Identification Supports Supports Not Applicable Shared components are used throughout.
3.3.3 Error Suggestion Supports Supports Not Applicable Failure messages state what to try next.
3.3.4 Error Prevention (Legal, Financial, Data) Partially Supports Not Applicable Not Applicable Export is refused while translations are unreviewed. Other destructive actions have not been reviewed for confirmation or undo as a set. No legal or financial transactions; data stays on the user’s computer.
3.3.8 Accessible Authentication (Minimum) Not Applicable Supports Not Applicable The desktop app has no login. Player join is by link or QR code with no cognitive function test.
4.1.3 Status Messages Supports Supports Not Applicable Progress and results are announced through polite live regions without flooding; the player page announces new inbox items.

Table 3: Revised Section 508, Chapter 3: Functional Performance Criteria

Section titled “Table 3: Revised Section 508, Chapter 3: Functional Performance Criteria”
Criterion Rating Remarks
302.1 Without Vision Partially Supports Semantic structure, labels and live regions are in place and pass axe. No recorded screen reader testing. Pictures of text have text alternatives. Video has no audio description.
302.2 With Limited Vision Partially Supports 200 % zoom, checked contrast in light and dark, a player text-size setting, and large-print PDFs. Exception: PDFs do not reflow.
302.3 Without Perception of Color Supports Status is given in words, not color alone, in audited screens.
302.4 Without Hearing Partially Supports Transcripts for audio injects, captions for video with voice lines. Audio injects are delivered with their text on the facilitator’s screen.
302.5 With Limited Hearing Partially Supports As 302.4. Volume is controlled by the operating system.
302.6 Without Speech Supports No feature requires speech input. Hot wash recording is optional; typed notes are the alternative.
302.7 With Limited Manipulation Partially Supports The desktop app is keyboard operable per the walkthrough, and single-key shortcuts can be turned off. Not tested with switch devices or speech-input software.
302.8 With Limited Reach and Strength Supports No simultaneous or sustained physical action is required.
302.9 With Limited Language, Cognitive, and Learning Abilities Partially Supports Plain-language copy, no cognitive tests on the player page, clear error states, Spanish player material, a large-print option. No user testing, and the facilitator interface is dense.

Table 4: Revised Section 508, Chapter 4: Hardware

Section titled “Table 4: Revised Section 508, Chapter 4: Hardware”

Not Applicable. Action Stations is software only.

Table 5: Revised Section 508, Chapter 5: Software

Section titled “Table 5: Revised Section 508, Chapter 5: Software”

Rated for the desktop application, and for the player page where it applies as web content.

Criterion Rating Remarks
501.1 Scope Not Applicable Section 508 incorporates WCAG 2.0 A and AA by reference. This report evaluates against WCAG 2.2 A and AA (Tables 1 and 2), which includes every 2.0 criterion.
502.2.1 User Control of Accessibility Features Partially Supports The app follows the operating-system color scheme and reduced-motion setting. No test checks that other platform settings pass through.
502.2.2 No Disruption of Accessibility Features Partially Supports No known feature disables an operating-system accessibility feature. Not tested against specific assistive technology.
502.3 Accessibility Services Partially Supports The UI is Chromium web content, which exposes name, role, state and relationships to the platform accessibility API. Axe verifies those attributes. No recorded test with assistive technology on Windows, macOS or Linux.
502.4 Platform Accessibility Features Partially Supports Keyboard, zoom and contrast behavior is tested in Chromium. Operating-system high-contrast and magnifier modes are not tested.
503.2 User Preferences Supports Theme follows the operating system; the player page has text size, theme, sound and vibration settings.
503.3 Alternate User Interfaces Not Applicable No alternate user interface is provided.
503.4 User Controls for Captions and Audio Description Partially Supports Captions are shown for video with voice lines. There is no audio description.
504.2 Content Creation or Editing Partially Supports PDF exports are tagged with titles, language, headings, table headers and list structure, so accessible content is the default. Word and Excel exports are not evaluated.
504.2.1 Preservation of Information Provided for Accessibility Partially Supports Alt text, language and heading structure are carried from the inject model into PDFs. Word exports are not evaluated.
504.2.2 PDF Export Partially Supports Tagged PDF export with document language and title. PDF/UA not verified (no veraPDF run); CSS-generated text is untagged.
504.3 Prompts Partially Supports The app warns before exporting unreviewed translation. It does not prompt users to write alt text for images they upload.
504.4 Templates Partially Supports Built-in inject templates keep the words as real text with a short alt label. Template authors are guided by docs/guides/templates.md; third-party and community templates are not evaluated.

Table 6: Revised Section 508, Chapter 6: Support Documentation and Services

Section titled “Table 6: Revised Section 508, Chapter 6: Support Documentation and Services”
Criterion Rating Remarks
602.2 Accessibility and Compatibility Features Partially Supports Keyboard use, skip link, shortcut toggle, large print and screen-reader packets are described in docs/guides/getting-started.md and docs/guides/translation-and-accessibility.md. No single page lists every feature.
602.3 Electronic Support Documentation Partially Supports Guides are Markdown in the repository and are published on the website. The repository text follows the same plain-language and heading rules; the rendered website pages were not tested.
602.4 Alternate Formats for Non-electronic Support Documentation Not Applicable No non-electronic documentation is provided.
603.2 Information on Accessibility and Compatibility Features Partially Supports This report and the guides named above.
603.3 Accommodation of Communication Needs Partially Supports Support is through the issue tracker (text). No telephone or relay service is offered.
  • Word (.docx) and Excel (.xlsx) exports.
  • The project website and the published copies of the guides.
  • Installers and operating-system dialogs (file pickers, keychain prompts).
  • The self-hosted server and relay (their only user interface is the player page they serve).
  • Third-party packs and templates.
  • Behavior with specific screen readers, magnifiers, speech recognition and switch access.
  • Desktop app and player page: open every screen with the keyboard alone, zoom to 200 %, and run an accessibility checker such as axe in light and dark mode.
  • PDFs: run veraPDF on an exported packet; open a packet with VoiceOver or NVDA and list headings.
Version Date Notes
0.6.2 2026-11-02 First report.