Viewshed

Accessibility Conformance Report

Draft — not yet in force. This document is being prepared and has not been finalized. It does not currently form an agreement, and the details it refers to are incomplete.

In short: A criterion-by-criterion report against WCAG 2.2 Level AA and the Revised Section 508 standards, in the VPAT format US public procurement asks for. It is a self-assessment, it says "Partially Supports" where that is the truth, and the accompanying plain-language statement lists the same problems in the same words. Organizations are welcome to attach it to their own proposals.

1. Product and report information

ProductViewshed — A web application for running public consultations: building and publishing surveys, collecting responses in a browser or on a shared tablet, publishing project pages and results, and producing reports.
Report version1.0
Report dateAugust 2026
Contact[hello@example.com]
Evaluation methodsSelf-evaluation. Manual keyboard-only operation of every public page including one required question of each type; screen reader spot checks on the survey runner and a project showcase; contrast computed from source colour values rather than estimated by eye, in both light and dark appearance; testing at 200% zoom and at a 320 pixel viewport width; and automated checks (axe-core, plus a keyboard traversal harness and source-level rules) that run against the public components on every change.
This is a self-assessment. No independent accessibility audit has been commissioned and no part of this report should be read as one. If your procurement requires third-party verification, ask us — we would rather be asked than assumed.

2. What this report covers

The following surfaces were reviewed page by page:

  • Surveys, including tablet and kiosk mode
  • Project showcase pages
  • Organization portals
  • Shared results and infographic pages
  • The project ambassador chat
  • Legal and accessibility documents

The signed-in authoring application, where an organization's own staff build surveys and design pages, has not had the same page-by-page review. It is covered by the automated checks that run on every change and has no known failures, which is not the same as having been assessed.

3. Standards and terms

  • Web Content Accessibility Guidelines 2.1, Level A and Level AA
  • Web Content Accessibility Guidelines 2.2, Level A and Level AA
  • Revised Section 508 standards (36 CFR Part 1194, Appendix A–C)
TermMeaning
SupportsThe functionality meets the criterion without known defects.
Partially SupportsSome functionality does not meet the criterion. The remark says which, and what is available instead.
Does Not SupportThe majority of the functionality does not meet the criterion.
Not ApplicableThe criterion is not relevant to this product.

Criteria introduced after WCAG 2.0 are marked with the version that introduced them, so a buyer working to 2.0 or 2.1 can read only the rows that apply to them.

4. WCAG 2.2 Level A

CriterionLevelConformanceRemarks and explanations
1.1.1 Non-text ContentAPartially SupportsInterface images, icons and charts carry text alternatives, and every chart also carries a written description of its figures. Images uploaded by an organization depend on that organization writing a description: the editor provides the field beside every upload, prompts for it, and offers an explicit 'decorative' choice, but cannot write the words.
1.2.1 Audio-only and Video-only (Prerecorded)APartially SupportsThe platform can embed audio or video supplied by an organization. It provides no captioning or transcript tooling, so an alternative for that media is the organization's responsibility.
1.2.2 Captions (Prerecorded)APartially SupportsVideo embedded in a survey or project page is hosted elsewhere and supplied by the organization, so its captions travel with it and are outside our control. The platform renders the embed accessibly — it is reachable, labelled and keyboard-operable — but adds no captioning tooling, so an organization embedding uncaptioned video will publish uncaptioned video.
1.2.3 Audio Description or Media Alternative (Prerecorded)APartially SupportsAs with captions, an audio description or text alternative for embedded media is the responsibility of whoever produced that media. The platform provides a text block that can carry a transcript beside any embed, but does not require one.
1.3.1 Info and RelationshipsASupportsHeadings, lists, tables and form labels are marked up semantically. The matrix question uses row and column header cells with scope, and native radio groups per row. Embedded content nests its headings under the containing document rather than restarting the outline.
1.3.2 Meaningful SequenceASupportsReading order follows DOM order throughout; no CSS reordering carries meaning.
1.3.3 Sensory CharacteristicsASupportsNo instruction depends on shape, size or position alone.
1.4.1 Use of ColorASupportsCharts label each series on the mark itself as well as in the legend. Required questions say 'required' in words rather than relying on a red asterisk. Selected states carry text or ARIA state, not colour alone.
1.4.2 Audio ControlANot ApplicableNothing plays audio automatically.
2.1.1 KeyboardASupportsEvery question type can be answered without a pointer, verified by an automated traversal that completes a survey containing one required question of every kind using focus and activation only. Drawing and signature questions accept a typed alternative; the image-marking question accepts arrow keys; the before/after comparison has a keyboard slider; maps pan and zoom from the keyboard.
2.1.2 No Keyboard TrapASupportsDialogs close with Escape and return focus to what opened them. The traversal harness fails if focus is lost or cannot leave a component.
2.1.4 Character Key Shortcuts (2.1)ASupportsNo single-character shortcuts; the command palette uses a modifier combination.
2.2.1 Timing AdjustableASupportsThe only time limit is a shared tablet clearing itself for the next person. It shows a visible countdown, can be extended without limit by anyone present, and can be triggered immediately.
2.2.2 Pause, Stop, HideASupportsThe live results screen can be paused. All decorative animation stops when the operating system requests reduced motion, including anything that would otherwise loop.
2.3.1 Three Flashes or Below ThresholdASupportsNothing in the interface flashes, blinks or strobes. The only animation is brief motion on chart marks and page transitions, all of which stops when reduced motion is requested.
2.4.1 Bypass BlocksASupportsEvery public page carries a skip link as its first stop and a main landmark for it to target.
2.4.2 Page TitledASupportsEvery page sets a distinct title, including shared results pages, which previously all inherited the product name.
2.4.3 Focus OrderASupportsFocus follows dialogs in and returns on close. Trying to continue with a blank required question moves focus to a summary naming each one.
2.4.4 Link Purpose (In Context)ASupportsLink text describes its destination, including image links, which carry the description of what enlarging them gets you.
2.5.1 Pointer Gestures (2.1)ASupportsNo path-based or multipoint gesture is required; map panning and the comparison slider both have keyboard equivalents.
2.5.2 Pointer Cancellation (2.1)ASupportsActivation happens on release throughout.
2.5.3 Label in Name (2.1)ASupportsWhere a control has visible text, its accessible name contains that text.
2.5.4 Motion Actuation (2.1)ANot ApplicableNothing responds to device motion.
3.1.1 Language of PageASupportsThe document language is declared.
3.2.1 On FocusASupportsFocus alone never changes context.
3.2.2 On InputASupportsChanging a value never submits or navigates without an explicit action.
3.3.1 Error IdentificationASupportsValidation errors are announced, identified in text, tied to the control they concern, and listed in a summary that names each unanswered question as a link to it.
3.3.2 Labels or InstructionsASupportsEvery input has a persistent visible label; placeholders are examples rather than labels.
4.1.1 ParsingANot ApplicableRemoved from WCAG 2.2 and no longer applicable. Markup is generated and validated by the framework.
4.1.2 Name, Role, ValueASupportsCustom controls expose role, name and state. Tabs name the panel they control, accordions report expanded state, and grouped controls carry a group name — with required status conveyed through the group's name where ARIA does not permit the attribute.

5. WCAG 2.2 Level AA

CriterionLevelConformanceRemarks and explanations
1.2.4 Captions (Live)AANot ApplicableNo live audio or video is produced by the platform.
1.2.5 Audio Description (Prerecorded)AAPartially SupportsAn audio description for embedded video is the responsibility of whoever produced that video, since the media is hosted elsewhere and supplied by the organization. The platform can carry a written description alongside an embed but neither generates nor requires one.
1.3.4 Orientation (2.1)AASupportsNothing is locked to an orientation.
1.3.5 Identify Input Purpose (2.1)AASupportsName and email fields declare their autocomplete purpose so a browser or password manager can fill them.
1.4.3 Contrast (Minimum)AAPartially SupportsEvery colour in the interface we control is computed rather than chosen, and meets the minimum in both light and dark appearance; text placed on a themed background derives its colour from that background rather than assuming white. An organization may still choose brand colours with poor contrast: the editor shows the measured ratio and warns, and deliberately does not override the choice.
1.4.4 Resize TextAASupportsTested at 200% with no loss of content or function.
1.4.5 Images of TextAASupportsText is text. Charts are SVG with real text elements, not pictures of numbers.
1.4.10 Reflow (2.1)AASupportsTested at a 320 pixel viewport width without two-dimensional scrolling. Wide content such as tables and charts scrolls within its own container rather than the page.
1.4.11 Non-text Contrast (2.1)AAPartially SupportsControl boundaries, focus indicators and interface graphics meet 3:1. Chart series colours in the lighter shipped themes do not — several sit between 1.2:1 and 2.9:1 against the chart panel. The figures remain available: every value is printed beside its mark, every series is labelled on the mark, and each chart carries a text description. Two shipped themes, 'High contrast' and 'Charcoal', clear the threshold on every colour including the chart palette.
1.4.12 Text Spacing (2.1)AASupportsNo loss of content when spacing is overridden; layout uses relative units.
1.4.13 Content on Hover or Focus (2.1)AASupportsTooltips are dismissible, hoverable and persistent.
2.4.5 Multiple WaysAASupportsPublic content is reachable from the organization's portal, from a direct link, and from a QR code; results pages are linked from the project they belong to.
2.4.6 Headings and LabelsAASupportsHeadings describe their section and follow a single outline per page.
2.4.7 Focus VisibleAASupportsA single focus indicator is defined once in the base layer and applies everywhere. Its colour is computed to meet the contrast minimum against the surface behind it in both appearances. A source-level check fails the build if any component removes the indicator without providing a replacement.
2.4.11 Focus Not Obscured (Minimum) (2.2)AASupportsAssessed by inspection rather than exhaustively. The interface uses few sticky elements, and the ones present sit clear of the focus path in the layouts tested.
2.5.7 Dragging Movements (2.2)AASupportsOn public pages nothing requires dragging: ranking uses buttons, the comparison slider accepts arrow keys, map panning accepts arrow keys, and markers are placed with a button and positioned with arrow keys.
2.5.8 Target Size (Minimum) (2.2)AAPartially SupportsControls are 24 by 24 CSS pixels or larger, with one exception: the matrix question's selection control is 22 pixels and relies on the spacing exception, which has been reasoned about but not verified at every viewport width.
3.1.2 Language of PartsAASupportsA survey translated into another language marks the translated content with that language, so a screen reader pronounces it correctly. Interface chrome remains in the page language and is marked as such by omission.
3.2.3 Consistent NavigationAASupportsNavigation keeps its order and position across pages.
3.2.4 Consistent IdentificationAASupportsThe same function carries the same name throughout.
3.2.6 Consistent Help (2.2)AASupportsHelp and support sit in the same place on every signed-in page. Public pages carry a route to the organization responsible and to this report.
3.3.3 Error SuggestionAASupportsMessages say what to do, not merely that something is wrong.
3.3.4 Error Prevention (Legal, Financial, Data)AASupportsDestructive actions confirm first, deletion is archival and reversible, and billing changes show what will be charged before they are made.
3.3.7 Redundant Entry (2.2)AASupportsA part-finished survey is restored on return, and previously entered information is not asked for twice within a process.
3.3.8 Accessible Authentication (Minimum) (2.2)AASupportsSign-in is email and password with no puzzle or cognitive test, and password managers can fill and submit it.
4.1.3 Status Messages (2.1)AASupportsSaving, validation results, live response counts and streamed assistant replies are announced without moving focus. Streamed replies are announced once complete rather than per token, which would otherwise restart the utterance continuously.

6. Section 508 Chapter 3 — Functional Performance Criteria

CriterionLevelConformanceRemarks and explanations
302.1 Without VisionAPartially SupportsThe whole workflow is operable with a screen reader. Charts, maps and images carry text equivalents; images uploaded by an organization depend on that organization describing them.
302.2 With Limited VisionAPartially SupportsMeets the contrast minimums in the interface we control and reflows at 320 pixels and 200% zoom. Chart series colours in the lighter themes are faint — see 1.4.11.
302.3 Without Perception of ColorASupportsColour is never the only carrier of meaning; chart series are labelled on the mark.
302.4 Without HearingASupportsThe platform conveys nothing by sound.
302.5 With Limited HearingASupportsNo information is conveyed by sound and nothing depends on hearing it, so no amplification, volume control or visual alternative is required of the platform.
302.6 Without SpeechASupportsNothing requires speech.
302.7 With Limited ManipulationASupportsEverything is operable from the keyboard, nothing requires dragging or a timed response, and the only time limit can be extended indefinitely.
302.8 With Limited Reach and StrengthASupportsTargets are 24 pixels or larger apart from one noted exception, nothing requires sustained pressure, simultaneous keys or a dragging movement, and every control is reachable with a keyboard or switch.
302.9 With Limited Language, Cognitive, and Learning AbilitiesAPartially SupportsPlain language throughout, consistent navigation, progress shown, answers restored on return, and errors that say what to do. The wording of an organization's own questions is theirs, and is the largest factor in how understandable a survey actually is.

7. Section 508 Chapters 4–6 — Hardware, Software, Support

CriterionLevelConformanceRemarks and explanations
402 Closed FunctionalityANot ApplicableNot closed functionality — the platform runs in the user's own browser with their own assistive technology.
403 BiometricsANot ApplicableNo biometric identification.
410 HardwareANot ApplicableSoftware only; no hardware is supplied.
501–503 Software — interoperability with assistive technologyASupportsA web application using platform accessibility services through standard HTML and ARIA. It does not disrupt platform features, and user preferences for colour, contrast, font size and reduced motion are respected.
504.2 Authoring Tool — content creationASupportsContent produced by the platform conforms to the level reported here. An organization publishing a survey or project page gets accessible output by default.
504.3 Authoring Tool — promptsASupportsThe editor prompts for the accessibility information only the author can supply: a description field beside every image upload with an explicit decorative option, and a measured contrast ratio with a warning beside every colour choice. It warns rather than blocks, and offers a one-click switch to a palette that meets the standard.
504.4 Authoring Tool — templatesASupportsShipped themes are tested; two of them meet the standard on every colour including the chart palette, and every preset that does is marked as such where it is chosen.
601–603 Support Documentation and ServicesASupportsThis report and a plain-language accessibility statement are published, and both name known problems rather than only strengths. Support is offered by email with no requirement to use any particular channel; a person who cannot use a page can report it and be heard another way.

8. Using this report

Organizations running consultations on behalf of a public body are welcome to attach this report to a proposal or a procurement response. It describes the Viewshed platform; it does not describe the content an organization publishes through it, which is theirs — the split is set out in the accessibility statement.

A downloadable copy is available at /legal/accessibility/vpat/download. If you need it in another format, or need something clarified for a specific solicitation, write to [hello@example.com].

If something in this product stops you taking part in a consultation, please tell us — reporting a barrier does not require knowing which criterion it falls under.