Skip to content

Audit and Remediate WCAG 2.1 Accessibility (A11y) Issues #91

Description

@Lakes41

Background

Custom UI components like the token selection modal, network switcher dropdowns, and custom sliders were built without ARIA attributes or keyboard navigation support.

Problem

Screen reader users and users who rely on keyboard navigation cannot effectively use the dApp, blocking a segment of users and failing standard accessibility compliance.

Expected Outcome

A fully accessible UI that passes WCAG 2.1 AA standards, ensuring all interactive Web3 elements are focusable, readable by screen readers, and operable via keyboard.

Suggested Implementation

  • Run automated accessibility audits using Lighthouse and eslint-plugin-jsx-a11y.
  • Refactor custom select menus and modals to utilize Radix UI or Headless UI primitives, which have built-in accessibility.
  • Add appropriate aria-labels, aria-expanded, and role attributes to all interactive elements.
  • Ensure sufficient color contrast ratios for text on active/inactive buttons.

Acceptance Criteria

  • A user can successfully connect a wallet, select a token, and submit a transaction using only the Tab, Enter, and Arrow keys.
  • Lighthouse Accessibility score reaches 100 on all major application routes.

Likely Affected Files

  • src/components/Modals/TokenSelectModal.tsx
  • src/components/Inputs/AmountInput.tsx
  • src/styles/theme.ts

Requirements

  • Focus trapping must be properly implemented within all open modals.

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrantFox OSSRelated to GrantFox Open Source Software initiativesMaybe RewardedPotential for a reward based on contributionOfficial Campaign | FWC26Period after the official FIFA World Cup 2026 campaignUIUser InterfaceaccessibilityImproving accessibility for all usersintermediateGood for intermediate level contributors

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions