Bringing AI-powered sports data to publisher sites
I built customizable data widgets and a Figma-based system that help publishers surface live sports content and guide fans into a deeper AI-powered experience.
- Scope
- Product strategy, UX/UI design, coded prototype, multi-brand design system
- Collaborators
- Product, Engineering, Data, Design
- Project status
- Publisher demo, client pitch, engineering handoff
- Timeline
- 12 weeks
























Context
How AI is changing the way fans consume sports content
SportsMax.AI helps publishers understand each story as it happens and surface more relevant content, creative, and monetization opportunities.
Yahoo Sports was not a client. The publisher experience shown is a conceptual showcase.

The New York Knicks are not here for the coronation of Victor Wembanyama.
New York secured a 105–95 Game 1 victory over the San Antonio Spurs in the NBA Finals.
Jalen Brunson and Mikal Bridges led the comeback after Julian Champagnie helped San Antonio build an early lead.
The series now moves to New York for the next chapter.
A sports-trained LLM reads every story and extracts its key entities.


Business opportunity
Contextual relevance opens new revenue opportunities
SportsMax.AI combines article context with live sports data to create timely fan experiences, new publisher inventory, and more relevant moments for advertisers.




The placement reached the audience, but missed the moment
Demographic targeting could place a generic ad near sports coverage, but it could not understand the player, matchup, or storyline driving each fan's attention.
The same placement opens new monetization opportunities
AI-powered data widgets use article entities and live sports data to connect the story with timely tickets, predictions, streams, or merchandise.
Publisher demo
We needed publisher buy-in before moving into production
Before investing in production, we built a configurable demo that let publishers experience the idea with their own article content, widget formats, and brand styling.
Concept 1/3
Turn a sample article into a reusable demo
Starting with a sample article, the prototype captured its content, entities, imagery, and publisher design tokens in a reusable structure. We could tailor the demo without rebuilding the experience each time.
Concept 2/3
Give publishers control of the look and feel
A theme tool let publishers preview the widgets inside their own product. They could apply brand colors, typography, spacing, and component styles across the experience.
Concept 3/3
Test which widgets earn publisher buy-in
Testing different formats and configurations showed us which concepts earned the strongest publisher buy-in and gave the team a clearer signal for what to prioritize next.
Development handoff
A reusable component model engineering could build from
I translated the approved direction into a development-ready Figma system, with reusable components, states, and variants across four core data-widget families.

Box score
One contextual surface adapts with the game, creating relevant actions for fans and new revenue opportunities for publishers and advertisers.

Schedule
One component moves from a team-level schedule into the details of a specific game.

Standings
Standings give fans useful context at a glance and another reason to stay engaged with the story.

Player career stats
Player performance becomes a contextual entry point for tickets, merchandise, and deeper team coverage.
Multi-brand design system
A shared design system that adapts to every publisher
I created one shared system that preserves each publisher's identity. A focused set of color, typography, spacing, and radius tokens adapts every widget to its host brand.
Only these values change
Primitive design tokens
- radius.base
- 12px
- space.base
- 18px
Defined once
Shared semantic layer
// shared by every publisher
{
"semantic": {
"color.text.brand": "{color.brand.primary}",
"color.icon.brand": "{color.brand.primary}",
"color.border.brand": "{color.brand.primary}",
"color.surface.brand": "{color.brand.primary}",
"color.surface.brand-subtle": "{color.brand.subtle}",
"font.family.display": "{font.display}",
"font.family.text": "{font.text}"
}
}Every data widget uses the same shared mapping, while publisher values change by theme.
One base, tailored to each publisher.
ClutchPoints theme applied

Reflections
A coded prototype became our shared language. At the start, I was still learning my way around GitHub and repos. Building alongside the team made the product tangible much earlier, giving product, design, data, and engineering one working experience to respond to together.
I could move from concept to iteration much faster. I designed most of the experience and used AI-assisted coding to iterate it directly. In twelve weeks, I covered a scope that would previously have taken me about six months, with more opportunities to test directions, respond to feedback, and refine the product along the way.
Working in code changed how I design. SportsMax.AI was shaped by live data, uncertain inputs, and technical limits. Working in code brought those conditions into design earlier and made me a stronger partner to engineering. For the first time, I felt equipped to carry an idea from strategy into a working system without stopping at the edge of Figma.

























