What: Add keyboard navigation support across the application for accessibility.
Why: Keyboard-only users can't navigate the app effectively. Tab order is inconsistent, and many interactive elements aren't keyboard accessible.
Scope: Add proper tabIndex to interactive elements. Ensure logical tab order. Add keyboard handlers for custom components (course cards, module list, quiz interface). Test with screen reader.
Acceptance criteria:
- All interactive elements are focusable
- Tab order is logical
- Enter/Space activates buttons and links
- Escape closes modals and dropdowns
Technical context: src/components/ — all components. src/app/ — all pages.
What: Add keyboard navigation support across the application for accessibility.
Why: Keyboard-only users can't navigate the app effectively. Tab order is inconsistent, and many interactive elements aren't keyboard accessible.
Scope: Add proper
tabIndexto interactive elements. Ensure logical tab order. Add keyboard handlers for custom components (course cards, module list, quiz interface). Test with screen reader.Acceptance criteria:
Technical context:
src/components/— all components.src/app/— all pages.