Skip to content

Enhance Heatmap Accessibility with Keyboard Navigation and ARIA Support#8358

Open
nishtha-agarwal-211 wants to merge 1 commit into
JhaSourav07:mainfrom
nishtha-agarwal-211:feat/keyboard-nav-aria-heatmap-8303
Open

Enhance Heatmap Accessibility with Keyboard Navigation and ARIA Support#8358
nishtha-agarwal-211 wants to merge 1 commit into
JhaSourav07:mainfrom
nishtha-agarwal-211:feat/keyboard-nav-aria-heatmap-8303

Conversation

@nishtha-agarwal-211

Copy link
Copy Markdown
Contributor

Description

Fixes #8303

Add full keyboard accessibility and screen reader support to contribution heatmap grid cells in Heatmap.tsx and ActivityHeatmapPro.tsx:

  • Enable keyboard cell navigation using ArrowUp, ArrowDown, ArrowLeft, and ArrowRight arrow keys.
  • Add an aria-live="polite" announcement region that reads cell date and commit count details when focused.
  • Add WCAG AAA compliant focus outline rings (focus:ring-2 focus:ring-emerald-500) matching active theme color palette.
  • Add comprehensive Vitest unit tests covering keyboard arrow navigation and screen reader live region announcements.

Pillar

  • 🎨 Pillar 1 — New Theme Design
  • 📐 Pillar 2 — Geometric SVG Improvement
  • 🕐 Pillar 3 — Timezone Logic Optimization
  • 🛠️ Other (Bug fix, refactoring, docs)

Visual Preview

  • Keyboard Navigation: Pressing arrow keys (ArrowUp, ArrowDown, ArrowLeft, ArrowRight) moves focus across cells seamlessly.
  • Screen Reader Announcements: aria-live="polite" updates with text like "5 contributions on Jan 1, 2024" on focus.
  • Focus Rings: High-contrast emerald focus ring outlines visible on keyboard focus for WCAG AAA compliance.

Checklist before requesting a review:

  • I have read the CONTRIBUTING.md file.
  • I have tested these changes locally (localhost:3000/api/streak?user=YOUR_USERNAME).
  • I have run npm run format and npm run lint locally and resolved all errors (CI will fail otherwise).
  • My commits follow the Conventional Commits format (e.g., feat(themes): ..., fix(calculate): ...).
  • I have updated README.md if I added a new theme or URL parameter.
  • I have started the repo.
  • I have made sure that i have only one commit to merge in this PR.
  • The SVG output matches the CommitPulse "premium quality" aesthetic standard (no raw elements, smooth animations, correct fonts).
  • (Recommended) I joined the CommitPulse Discord community for contributor discussions, mentorship, and faster PR support.

Copilot AI review requested due to automatic review settings July 26, 2026 15:57
@vercel

vercel Bot commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

@nishtha-agarwal-211 is attempting to deploy a commit to the jhasourav07's projects Team on Vercel.

A member of the Team first needs to authorize it.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@retenta-bot

retenta-bot Bot commented Jul 26, 2026

Copy link
Copy Markdown

This pull request significantly enhances the accessibility of the heatmap component by implementing keyboard navigation and ARIA support, which aligns with our previous decision to enhance customizer accessibility. The addition of comprehensive unit tests also ensures that these features are well-covered. Thank you for your contribution, and I look forward to your updates!

@retenta-bot retenta-bot Bot changed the title feat(heatmap): add keyboard navigation and ARIA live region announcements (#8303) Enhance Heatmap Accessibility with Keyboard Navigation and ARIA Support Jul 26, 2026
@github-actions github-actions Bot added the status:blocked This PR is blocked due to a failing CI check. label Jul 26, 2026
@nishtha-agarwal-211
nishtha-agarwal-211 force-pushed the feat/keyboard-nav-aria-heatmap-8303 branch from 3a9d24a to 8c28bd9 Compare July 26, 2026 16:16
@github-actions github-actions Bot removed the status:blocked This PR is blocked due to a failing CI check. label Jul 26, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📦 Next.js Bundle Size Report (Gzipped Sizes)

Asset PR Size Base Size Difference Status
static/chunks/4305-[hash].js 16.73 KB 16.47 KB +0.26 KB (+1.58%) 🔴 Regression
static/chunks/app/(root)/dashboard/[username]/page-[hash].js 54.34 KB 54.03 KB +0.31 KB (+0.57%) 🔴 Regression
static/css/[hash].css 41.95 KB 41.95 KB 0 B

📊 Summary of Totals

Category PR Size Base Size Difference
Total JS 4054.42 KB 4052.50 KB +1.92 KB (+0.05%)
Total CSS 339.12 KB 338.94 KB +0.18 KB (+0.05%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: Add keyboard navigation and ARIA live region announcements for Heatmap cells

2 participants