Skip to content

Accessibility Menu

  • Complexity: Moderate
  • Stack: Frontend

As a user, I want to adjust font size, contrast, and motion settings so that I can use the application comfortably based on my visual needs.

Description

The application currently offers no accessibility customization. A ThemeService already exists in clib/services/ for managing theme state. This story extends the application with a settings panel where users can adjust font size, enable high contrast mode, and reduce motion. Settings take effect immediately and persist across sessions.

Acceptance Criteria

  • [ ] An accessibility settings button is visible on all pages via the navbar component
  • [ ] Users can select a font size: small, medium (default), large, or extra-large
  • [ ] Changing font size immediately resizes text across the entire application
  • [ ] Users can toggle high contrast mode — enabling it updates all background and text colors
  • [ ] High contrast color combinations meet WCAG AA minimum contrast ratio (4.5:1)
  • [ ] Users can toggle reduced motion — enabling it disables all animations and transitions
  • [ ] Settings take effect immediately without a page reload
  • [ ] Settings persist after closing and reopening the browser
  • [ ] Default settings are applied when no stored preferences exist
  • [ ] The accessibility menu can be opened, navigated, and closed using only the keyboard

Copyright © MSG Systems Romania AI Labs