fix: improve accessibility across marketplace and interactive components - #452
Merged
Conversation
* Add missing aria-label attributes to interactive controls * Add aria-expanded states to collapsible navigation elements * Replace clickable div elements with semantic button elements * Implement keyboard focus trapping for modal dialogs * Prevent keyboard focus from escaping open modals * Add Escape key handling to close modal dialogs * Improve keyboard navigation across marketplace booking flow * Improve button and interactive element accessibility for screen readers * Address accessibility-related color contrast issues * Ensure interactive components provide clear semantic meaning and state information This improves SkillSphere accessibility for keyboard-only users and users relying on screen readers while ensuring modal interactions remain contained and predictable.
|
@vic-Gray is attempting to deploy a commit to the luluameh's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Contributor
|
LGTM |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR improves the accessibility of SkillSphere's interactive components, with a focus on keyboard navigation, screen reader support, modal behavior, semantic HTML, and visual contrast.
The changes address accessibility warnings identified across components such as
Navbar.tsx,FundSessionModal.tsx,Sidebar.tsx, and other interactive elements involved in the marketplace booking flow.Changes Made
♿ ARIA and Screen Reader Improvements
aria-labelattributes to interactive controls where visible text alone does not sufficiently describe their purpose.aria-expandedattributes to collapsible navigation and menu controls.⌨️ Keyboard Navigation
<div>elements with appropriate<button>elements.Tab,Enter, andEscape.🔒 Modal Focus Management
Escapekey handling to allow users to close modals without requiring a mouse.🎨 Visual Accessibility
Components Audited
The accessibility improvements include, but are not limited to:
Navbar.tsxFundSessionModal.tsxSidebar.tsxAcceptance Criteria
Tab.Enter.Escape.aria-expanded.Testing
The updated interactions should be tested with:
Tab/Shift + TabEnterEscapeExpected Result
SkillSphere should provide a more consistent and accessible experience for users who rely on keyboards or assistive technologies, while maintaining the existing functionality and visual behavior of the application.
Closes #440