Add a keyboard-shortcuts help overlay opened with the ? key
Description
The dashboard is keyboard-driven but offers no discoverable list of shortcuts. This issue adds a lightweight help overlay, opened by pressing ? (Shift+/) and closed with Escape, that lists the app's keyboard affordances (navigation links, the command palette, refresh, etc.) so operators can learn them without leaving the page.
Requirements and context
- Repository scope: StableRoute-Org/Stableroute-frontend only.
- Register a global keydown listener that opens the overlay on
?, ignoring the keystroke when focus is in an input, textarea, or contenteditable.
- Render the overlay as a
role="dialog" aria-modal="true" with an accessible name; close on Escape and on overlay/backdrop click.
- Mount it once from the shared layout in
src/app/layout.tsx so it is available on every route; keep the shortcut list data-driven.
Suggested execution
- Fork the repo and create a branch
git checkout -b feature/navigation-shortcuts-help-overlay
- Implement changes
- Write code in: a new
src/components/ShortcutsHelp.tsx mounted from src/app/layout.tsx.
- Write comprehensive tests in:
src/components/__tests__/ShortcutsHelp.test.tsx — opens on ?, ignores ? while typing in a field, closes on Escape, and exposes a dialog name.
- Add documentation: list the shortcut in
README.md.
- Validate accessibility: modal semantics and Escape-to-close.
- Test and commit
Test and commit
- Run
npm run lint, npm test, and npm run build.
Example commit message
feat: add keyboard-shortcuts help overlay opened with the ? key
Guidelines
- Minimum 95 percent test coverage for impacted modules.
- Clear, reviewer-focused documentation.
- Timeframe: 96 hours.
Community & contribution rewards
- 💬 Join the StableRoute community on Discord for questions, reviews, and faster merges: https://discord.gg/37aCpusvx
- ⭐ This is a GrantFox OSS / Official Campaign task and may be rewarded. When your PR is merged you'll be prompted to rate the project — if this issue and the maintainers helped you ship, we'd be grateful for a 5-star rating. Clear questions in Discord and tidy, well-tested PRs are the fastest path to a merge and a reward.
Add a keyboard-shortcuts help overlay opened with the ? key
Description
The dashboard is keyboard-driven but offers no discoverable list of shortcuts. This issue adds a lightweight help overlay, opened by pressing
?(Shift+/) and closed with Escape, that lists the app's keyboard affordances (navigation links, the command palette, refresh, etc.) so operators can learn them without leaving the page.Requirements and context
?, ignoring the keystroke when focus is in an input, textarea, or contenteditable.role="dialog" aria-modal="true"with an accessible name; close on Escape and on overlay/backdrop click.src/app/layout.tsxso it is available on every route; keep the shortcut list data-driven.Suggested execution
git checkout -b feature/navigation-shortcuts-help-overlaysrc/components/ShortcutsHelp.tsxmounted fromsrc/app/layout.tsx.src/components/__tests__/ShortcutsHelp.test.tsx— opens on?, ignores?while typing in a field, closes on Escape, and exposes a dialog name.README.md.Test and commit
npm run lint,npm test, andnpm run build.Example commit message
feat: add keyboard-shortcuts help overlay opened with the ? keyGuidelines
Community & contribution rewards