Building a reusable component system for responsive, touch-enabled content
Before: Static, unresponsive content with text embedded in graphics
Our healthcare websites had sections for news, updates, and seasonal information that were causing headaches:
After: Touch-enabled cards with separate text and graphics
A reusable card component library that:
Midway through the first implementation, I realized this needed to work across multiple sites with different structures. I standardized the JavaScript functionality, CSS styling, and HTML structure so it could drop into any site regardless of the surrounding architecture.
I got pushback on having off-screen cards and swipe gestures. But the accessibility requirements meant the old approach wasn't an option. I made the case that prioritizing 1-2 cards on-screen while keeping others accessible was better than overwhelming users with vertical scrolling (some implementations had 6-7 cards). Added arrows as a clear fallback for users unfamiliar with swipe gestures, especially seniors.
By separating text from graphics, I eliminated the need for massive safe zones. Graphics could be more visually interesting without worrying about text getting cut off at different screen sizes.
As the solo developer managing three healthcare sites, I was responsible for both designing and implementing solutions. When I redesigned these sites to be responsive, the old static content sections became maintenance nightmares.
I started building the first implementation and realized halfway through that this was too complex to rebuild for each site. That's when I decided to create it as a library—standardized code that could be reused everywhere. On one site where stakeholders objected to off-screen content, we compromised with a responsive grid on desktop while keeping the single-card mobile experience.
Note: Quantitative user metrics were not established on this legacy platform during the implementation of these updates.