feat: add keyboard shortcuts and accessibility navigation support#811
feat: add keyboard shortcuts and accessibility navigation support#811vikrantkulkarni07 wants to merge 3 commits into
Conversation
|
@vikrantkulkarni07 is attempting to deploy a commit to the jhasourav07's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
👋 Hey @vikrantkulkarni07, welcome to CommitPulse! 🎉 Thanks for opening your first pull request — this is a big deal and we appreciate the effort! While you wait for a review, please double-check:
A maintainer will review your PR shortly. Hang tight! 🚀 |
|
👋 Hey @vikrantkulkarni07! Thanks for your contribution! 🎉 It looks like this PR isn't linked to any issue yet. Please edit your PR description and add a closing keyword so we can track this properly, for example:
Once you've updated the PR description the check will re-run automatically. 🙌 |
|
👋 Hey @vikrantkulkarni07, it looks like you didn't use our PR template! The section Please update your PR description to include all required sections so we can review this properly:
You can find the full template in CONTRIBUTING.md. Just edit your PR description and the |
|
🚨 Hey @vikrantkulkarni07, the CI Pipeline is failing on this PR and it has been marked as Please fix the issues before this can be reviewed. Here's how: 1. Run checks locally before pushing: npm run format:check # Check Prettier formatting
npm run lint # Run ESLint
npm run typecheck # TypeScript type check
npm run test # Run unit tests (Vitest)
npm run build # Verify production build passes2. Auto-fix common issues: npm run format # Auto-fix formatting with Prettier
npm run lint -- --fix # Auto-fix lint errors where possible3. Check the full failure log here: Once you push a fix and the CI passes, the |
… enhancements - Implemented global keyboard shortcuts engine (g+h, ?, Esc, /) - Added accessible Command Palette (Ctrl+K) with arrow key navigation - Added KeyboardHelpModal for shortcut discovery - Enhanced Navbar with search input and global focus listener - Fixed React hydration mismatches and configured ESLint overrides - Mocked lucide-react SVGs to resolve Vitest rendering crashes
45ada1c to
fa2af32
Compare
|
Everything is fine now :) |
Description
This PR adds keyboard shortcuts and accessibility-focused keyboard navigation support across CommitPulse to improve usability, accessibility, and productivity for keyboard-first users.
Features Added
?/Shift + /→ Open keyboard shortcuts help modalEsc→ Close active modal/dialog/→ Focus search inputCtrl + K→ Open quick navigation / command paletteg + h→ Navigate to Homeg + d→ Navigate to Dashboardg + r→ Navigate to Repositoriesg + p→ Navigate to ProfileAccessibility Improvements
Prevent shortcuts while typing inside:
Improved modal accessibility using:
role="dialog"aria-modalaria-labelledbyAdded keyboard focus management using refs
Added keyboard activation support for interactive custom elements
Added accessible labels for icon-only buttons
Improved keyboard-first navigation workflows
Technical Improvements
Fixes #803
Pillar
Visual Preview
(Add screenshots/GIFs here)
Checklist before requesting a review:
CONTRIBUTING.mdfile.localhost:3000/api/streak?user=YOUR_USERNAME).npm run formatandnpm run lintlocally and resolved all errors (CI will fail otherwise).feat(themes): ...,fix(calculate): ...).README.mdif I added a new theme or URL parameter.