Skip to content

Redesign TechRadar with interactive SVG and tooltips - #22

Merged
BarryHenryJr merged 5 commits into
mainfrom
14-chore-uiux-refactor-unreadable-color-palette-on-overview-page
Jan 8, 2026
Merged

BarryHenryJr merged 5 commits into
mainfrom
14-chore-uiux-refactor-unreadable-color-palette-on-overview-page

Conversation

@BarryHenryJr

Copy link
Copy Markdown
Owner

This pull request significantly refactors and enhances the TechRadar component, introducing a more interactive, accessible, and visually appealing technology radar chart. The update includes a new data model, improved SVG rendering, interactive tooltips, and better accessibility and motion handling.

Key improvements and changes:

1. Data Model and Type Enhancements

  • Introduced explicit Quadrant and Ring types and expanded the TechItem type to include unique id and optional description fields. The technology items data (TECH_ITEMS) is now more descriptive and structured, supporting richer tooltips and improved maintainability.

2. Visual and Interactive Radar Chart

  • Rebuilt the radar visualization using SVG with scalable coordinates, concentric rings, quadrant dividers, and quadrant labels for clarity. Each technology "blip" is interactive, with smooth animations and a "ping" effect for adopted tech, leveraging framer-motion for motion and animation.
  • Added a responsive and visually improved legend/key, now integrated into the card header for quick reference.

3. User Interaction and Accessibility

  • Implemented hover and click interactions for technology blips, displaying animated tooltips with technology details and adoption status. The component now handles keyboard navigation (Enter/Space) and closes tooltips on outside clicks, enhancing accessibility. (F4fcd

Refactors the TechRadar component to use a scalable, interactive SVG radar chart with quadrant and ring labels, animated blips, and accessible tooltips. Adds Framer Motion for smooth animations, improves accessibility, and updates the data structure for clarity and maintainability. The new design enhances user experience and visual clarity.
@BarryHenryJr BarryHenryJr self-assigned this Jan 8, 2026
Copilot AI review requested due to automatic review settings January 8, 2026 19:09
@BarryHenryJr BarryHenryJr added the bug Something isn't working label Jan 8, 2026
@BarryHenryJr BarryHenryJr linked an issue Jan 8, 2026 that may be closed by this pull request
@railway-app

railway-app Bot commented Jan 8, 2026

Copy link
Copy Markdown

🚅 Deployed to the BarryHenry-Portfolio-Web-pr-22 environment in upbeat-freedom

Service Status Web Updated (UTC)
BarryHenry-Portfolio-Web ✅ Success (View Logs) Jan 8, 2026 at 8:41 pm

@gemini-code-assist

Copy link
Copy Markdown

Summary of Changes

Hello @BarryHenryJr, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly overhauls the TechRadar component, transforming it from a static display into a highly interactive and visually engaging tool. The changes involve a complete redesign of the underlying data model, a shift to a more flexible SVG-based rendering approach, and the integration of advanced animation and interaction features. This refactor aims to provide users with a more dynamic and informative way to explore technology adoption levels, enhancing both usability and accessibility.

Highlights

  • Enhanced Data Model: The TechItem data model has been significantly improved to include unique ids and optional description fields, alongside explicit Quadrant and Ring types, leading to a more structured and maintainable data configuration.
  • Interactive SVG Visualization: The radar chart has been completely rebuilt using SVG, featuring scalable coordinates, dynamic concentric rings, and clear quadrant dividers. Technology 'blips' are now interactive, with smooth animations and a distinct 'ping' effect for adopted technologies, powered by framer-motion.
  • Dynamic Tooltips and Accessibility: Introduced animated tooltips that display detailed technology information on hover or click. The component now supports improved accessibility through keyboard navigation (Enter/Space) and automatically closes tooltips when clicking outside the radar area.
  • UI Component Refactor: The component's structure has been refactored to utilize Card, CardHeader, CardTitle, and CardContent components for a cleaner and more consistent UI. The legend has also been integrated directly into the card header for better visual flow.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@railway-app
railway-app Bot temporarily deployed to upbeat-freedom / BarryHenry-Portfolio-Web-pr-22 January 8, 2026 19:09 Destroyed

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This is an excellent and significant refactor of the TechRadar component. The new implementation is much more interactive, visually appealing, and maintainable. The use of framer-motion for animations, the improved data model, and the attention to accessibility are all great improvements. I have a few suggestions to further enhance the code, mainly focusing on performance, maintainability, and fixing a minor visual bug in the new ping animation.

Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This pull request redesigns the TechRadar component from a static visualization to a fully interactive, animated radar chart. The redesign introduces comprehensive interactivity with hover states, click-to-pin tooltips, and keyboard navigation, while maintaining accessibility through reduced motion support and ARIA labels.

Key Changes:

  • Enhanced data model with unique IDs, explicit types (Quadrant/Ring), and descriptive content for each technology item
  • Complete SVG reimplementation with scalable coordinates, interactive blips, animated tooltips, and visual ring indicators
  • Accessibility improvements including keyboard navigation (Enter/Space keys), reduced motion support, and outside-click handling

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Improves SVG layout constants, optimizes ring color lookup, and enhances accessibility with keyboard focus support. Refactors tooltip and details panel logic, updates quadrant and label positioning, and improves animation and visual clarity for tech blips. Adds ARIA roles and descriptive SVG metadata for better accessibility.
@railway-app
railway-app Bot temporarily deployed to upbeat-freedom / BarryHenry-Portfolio-Web-pr-22 January 8, 2026 19:37 Destroyed
@BarryHenryJr
BarryHenryJr requested a review from Copilot January 8, 2026 19:38

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 7 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Refactored interactive SVG elements for better keyboard accessibility by adding an invisible focusable area. Adjusted quadrant label positions, increased marker size, and improved tooltip positioning and appearance. Introduced theme color constants and enhanced text shadow for better readability.
@railway-app
railway-app Bot temporarily deployed to upbeat-freedom / BarryHenry-Portfolio-Web-pr-22 January 8, 2026 19:52 Destroyed
@BarryHenryJr
BarryHenryJr requested a review from Copilot January 8, 2026 19:53

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 9 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Updated ring color definitions to use CSS variables with semantic HSL fallbacks for better theming. Improved tooltip positioning logic to avoid overlap, added comments for overflow handling, and enhanced text shadow for label readability. Removed unused theme color constants and fixed animation compatibility issues with Framer Motion and CSS variables.
@railway-app
railway-app Bot temporarily deployed to upbeat-freedom / BarryHenry-Portfolio-Web-pr-22 January 8, 2026 20:07 Destroyed
@BarryHenryJr
BarryHenryJr requested a review from Copilot January 8, 2026 20:10

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Comment thread src/components/dashboard/TechRadar.tsx Outdated
Moved mapToSvg helper outside the component for clarity. Simplified tooltip backdrop-blur logic and added a comment for readability.
@railway-app
railway-app Bot temporarily deployed to upbeat-freedom / BarryHenry-Portfolio-Web-pr-22 January 8, 2026 20:40 Destroyed
@BarryHenryJr
BarryHenryJr merged commit 0f9e05d into main Jan 8, 2026
7 checks passed
@BarryHenryJr
BarryHenryJr deleted the 14-chore-uiux-refactor-unreadable-color-palette-on-overview-page branch January 8, 2026 20:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore (ui/ux): refactor unreadable color palette on overview page

2 participants