
Accessibility Conformance Report
VPAT® 2.5 — WCAG 2.1 Level AA
Product Information
Product Name
Be The Buffalo Classroom
Report Date
October 2026
Product Description
K-5 Social-Emotional Learning Platform
Evaluation Standard
WCAG 2.1 Level AA
Conformance Summary
WCAG 2.1 Level AA — Partially Supports
Be The Buffalo Classroom partially supports WCAG 2.1 Level AA conformance. Of the 50 success criteria, 44 are fully supported, 1 partially supported, and 5 are not applicable to the product.
Key Accessibility Features
Screen Reader Support
All 40+ projector activities use ARIA attributes (aria-hidden, aria-live, role) to provide meaningful screen reader announcements and hide decorative content.
Reduced Motion
A global prefers-reduced-motion media query disables CSS animations and transitions. Framer Motion also respects this setting automatically.
Keyboard Navigation
All interactive elements are accessible via keyboard. Skip-to-main-content links and logical focus order enable efficient navigation.
Unique Page Titles
Every page and activity sets a unique browser tab title (e.g. "Strengths | Be The Buffalo") via the usePageTitle hook.
Bilingual Support
Full English and Spanish translations for all content, with language switching available in every view via next-intl.
Responsive Design
Content reflows for all screen sizes from 320px to large projector displays. No horizontal scrolling at any breakpoint.
Descriptive Alt Text
All meaningful images have context-rich alt text (e.g. "Buffalo celebrating strengths" instead of generic "Celebration").
Status Announcements
Dynamic content changes (scores, scenarios, breaking news) use aria-live regions and role="status" to announce updates without moving focus.
WCAG 2.1 Level A Success Criteria
| Criterion | Conformance |
|---|---|
| 1.1.1Non-text Content All meaningful images have descriptive alt text. Decorative elements (floating backgrounds, confetti, weather effects) are hidden from assistive technology with aria-hidden="true". | Supports |
| 1.2.1Audio-only and Video-only (Prerecorded) The Songs page contains prerecorded audio-only content (SEL songs). Synchronized lyrics are displayed in the karaoke player during playback. However, a static downloadable transcript of the full lyrics is not yet available outside of playback. | Partially Supports |
| 1.2.2Captions (Prerecorded) The Help Center includes one embedded YouTube video with YouTube's auto-generated captions available. All song lyrics are displayed as synchronized text during karaoke playback. | Supports |
| 1.2.3Audio Description or Media Alternative (Prerecorded) The embedded Help Center video is a simple UI walkthrough. No complex visual-only content requires audio description. | Not Applicable |
| 1.3.1Info and Relationships Semantic HTML structure is used throughout. Headings, lists, and landmarks convey document structure. ARIA roles (status, dialog, alert) communicate relationships programmatically. | Supports |
| 1.3.2Meaningful Sequence DOM order matches visual presentation. Content flows logically for screen readers. | Supports |
| 1.3.3Sensory Characteristics Instructions do not rely solely on shape, color, size, or visual location. Text labels accompany all interactive elements. | Supports |
| 1.4.1Use of Color Color is not the sole means of conveying information. Icons, text labels, and patterns supplement color indicators. | Supports |
| 1.4.2Audio Control Audio (songs page) does not autoplay. Users have full control over playback. | Supports |
| 2.1.1Keyboard All interactive elements (buttons, links, form controls) are operable via keyboard. Activities use standard HTML buttons for navigation. | Supports |
| 2.1.2No Keyboard Trap Focus is never trapped. Modal dialogs (solve modal, match celebration) use aria-modal and can be dismissed. | Supports |
| 2.1.4Character Key Shortcuts The application does not use single-character keyboard shortcuts. | Not Applicable |
| 2.2.1Timing Adjustable Activities are teacher-paced, not time-limited. Teachers control progression through all views. | Supports |
| 2.2.2Pause, Stop, Hide All animated content (floating backgrounds, confetti, weather effects) is suppressed when the user enables prefers-reduced-motion at the OS level. Decorative animations are hidden from assistive technology. | Supports |
| 2.3.1Three Flashes or Below Threshold No content flashes more than three times per second. | Supports |
| 2.4.1Bypass Blocks Skip-to-main-content links are provided. Navigation landmarks allow users to jump between regions. | Supports |
| 2.4.2Page Titled Every page and projector activity has a unique, descriptive browser tab title via the usePageTitle hook (e.g. "Strengths | Be The Buffalo"). | Supports |
| 2.4.3Focus Order Focus order follows logical reading order. Interactive elements receive focus in a meaningful sequence. | Supports |
| 2.4.4Link Purpose (In Context) Link text is descriptive. Navigation items clearly indicate their destination. | Supports |
| 2.5.1Pointer Gestures No multipoint or path-based gestures are required. All interactions use simple click/tap. | Supports |
| 2.5.2Pointer Cancellation Actions are triggered on pointer up, allowing cancellation by moving the pointer away. | Supports |
| 2.5.3Label in Name Accessible names of controls match their visible text labels. | Supports |
| 2.5.4Motion Actuation The application does not use device motion for any functionality. | Not Applicable |
| 3.1.1Language of Page The HTML lang attribute is set appropriately. The platform supports English and Spanish via next-intl. | Supports |
| 3.2.1On Focus Receiving focus does not trigger unexpected context changes. | Supports |
| 3.2.2On Input Changing form settings does not automatically cause context changes without user confirmation. | Supports |
| 3.3.1Error Identification Form errors (login, signup) are clearly identified in text with descriptive messages. | Supports |
| 3.3.2Labels or Instructions All form inputs have associated labels. Activity instructions are provided as text before interaction. | Supports |
| 4.1.1Parsing HTML is well-formed (generated by React/Next.js). No duplicate IDs or nesting errors. | Supports |
| 4.1.2Name, Role, Value Interactive elements use native HTML semantics or appropriate ARIA attributes. Custom controls have role, state, and name exposed to assistive technology. | Supports |
WCAG 2.1 Level AA Success Criteria
| Criterion | Conformance |
|---|---|
| 1.2.4Captions (Live) The platform does not include live audio or video streaming. | Not Applicable |
| 1.2.5Audio Description (Prerecorded) The embedded Help Center video is a simple UI walkthrough that does not contain visual-only information requiring audio description. | Not Applicable |
| 1.3.4Orientation Content is not restricted to a single display orientation. The responsive layout adapts to portrait and landscape. | Supports |
| 1.3.5Identify Input Purpose Form inputs (email, password) use appropriate autocomplete attributes and input types. | Supports |
| 1.4.3Contrast (Minimum) Text colors meet 4.5:1 contrast ratio against backgrounds. The brand palette (warm browns on cream/white) was designed for adequate contrast. | Supports |
| 1.4.4Resize Text Text can be resized up to 200% without loss of content or functionality. Layouts use responsive units (rem, Tailwind spacing scale). | Supports |
| 1.4.5Images of Text Text is rendered as real text, not as images. Illustrations are decorative or supplemental. | Supports |
| 1.4.10Reflow Content reflows to a single column at 320px CSS width. Responsive breakpoints (sm, md, lg) handle layout adaptation. | Supports |
| 1.4.11Non-text Contrast UI components and graphical objects (buttons, borders, icons) have at least 3:1 contrast ratio. | Supports |
| 1.4.12Text Spacing Content remains functional when users override line height, letter spacing, word spacing, and paragraph spacing. | Supports |
| 1.4.13Content on Hover or Focus Tooltips and hover content are dismissible, hoverable, and persistent until dismissed. | Supports |
| 2.4.5Multiple Ways Users can navigate via the lesson planner, direct activity links, projector dashboard, and browser navigation. | Supports |
| 2.4.6Headings and Labels Headings describe the topic or purpose of content. Form labels clearly describe input fields. | Supports |
| 2.4.7Focus Visible Focus indicators are visible on interactive elements via browser defaults and Tailwind's focus ring utilities. | Supports |
| 3.1.2Language of Parts The bilingual system (English/Spanish) sets language context via next-intl. Language switching is available in all views. | Supports |
| 3.2.3Consistent Navigation Navigation patterns are consistent across pages. The projector header and back button appear in every activity. | Supports |
| 3.2.4Consistent Identification Components with the same functionality use consistent labels and icons throughout the application. | Supports |
| 3.3.3Error Suggestion When input errors are detected (login, signup), specific suggestions for correction are provided. | Supports |
| 3.3.4Error Prevention (Legal, Financial, Data) Subscription billing is handled through Stripe's hosted portal, which provides its own confirmation steps. Profile changes (email, password) require confirmation before saving. | Supports |
| 4.1.3Status Messages Dynamic status updates use aria-live="polite" (scenario text, breaking news) and role="status" (score counters, summary stats) so screen readers announce changes without moving focus. | Supports |
Evaluation Methods
This report is based on evaluation of the Be The Buffalo Classroom platform using the following methods:
- ✓Manual code review of all 40+ interactive projector activities
- ✓Verification of ARIA attributes, semantic HTML, and landmark regions
- ✓Keyboard-only navigation testing across all activity views
- ✓Automated linting with Tailwind CSS and ESLint accessibility rules
- ✓Responsive layout testing across breakpoints (320px – 1920px)
- ✓prefers-reduced-motion behavior verification
Feedback & Contact
We are committed to making Be The Buffalo accessible to all educators and learners. If you encounter an accessibility barrier or have suggestions for improvement, please contact us:
📧 accessibility@bethebuffaloclassroom.com
VPAT® is a registered trademark of the Information Technology Industry Council (ITI). This report follows the ITI VPAT® 2.5 format. This Accessibility Conformance Report covers the Be The Buffalo Classroom web application at classroom.bethebuffaloclassroom.com.