WalkupMatch

Spotify Wrapped meets MLB

WalkupMatch connects to your Spotify and builds you a full MLB roster of real baseball players whose walk-up songs align with your music taste. It then pulls live stats and tells you how your fantasy music team would actually perform.

My Role

Designer & Full-Stack Developer

Tools / Methods

Figma React / Next.js Spotify API Live Sports API

Timeline

Feb 2025 - Apr 2025

The Idea

Baseball players choose walk-up songs that play as they step up to bat or pitch. When I stumbled across an open-source API for MLB walk-up songs, I knew I wanted to build something with it. The premise: if your music taste overlaps with a player's walk-up music, they're on your team.

It's a simple and lighthearted concept, but making the results feel meaningful required a matching algorithm with real depth behind it.

WalkupMatch — Mobile lineup view WalkupMatch — Mobile playlist view

From Spotify to Roster

You connect your Spotify account, and the app pulls your top tracks, top artists, saved songs, and genre profile across multiple time ranges. On the other side is a database of MLB players with their walk-up songs, linked to Spotify track IDs and tagged with genres.

The app scores every player against your profile, then assembles a full roster, optimizing for match quality. Once your team is built, it pulls each player's real stats from a live sports API to calculate team averages and a projected win-loss record.

WalkupMatch — Desktop view

The Matching Logic

Each player's walk-up songs are scored against your Spotify data on three dimensions: direct song matches (you listen to the same track), artist matches (you listen to the same artist), and genre overlap (your top genres align with the song's genres). A song you've actually liked or saved carries the most weight.

Time range matters too. A track in your long-term top songs says more about your taste than something you binged last week, so the algorithm weights accordingly. Rank also factors in: your #3 artist is a stronger match than your #47.

When assembling the team, the algorithm fills positions one at a time, applying two constraints that keep the results interesting: a genre diversity boost (so your team isn't nine players who all share one genre) and an artist repetition penalty (so one popular artist doesn't dominate the roster). The result is a team that genuinely reflects the range of your music taste.

Team Stats & Projected Record

Once your roster is locked, the app hits a live sports API to pull real stats for each player: batting average, OPS, and ERA. It aggregates these into team-level numbers and generates a projected win-loss record, so you can see whether your music taste would produce a playoff contender or a last-place squad.

Custom Backdrops

I illustrated a set of baseball environments used as decorative backdrops to give the app a handmade quality.

WalkupMatch — Field illustration
WalkupMatch — Dugout illustration WalkupMatch — Bullpen illustration

More case studies

WhichYear

Daily game with over 600,000 plays

  • UI Design
  • Full-Stack
WhichYear

Finvera

Fintech startup news site

  • UI Design
  • Front-End
Finvera

Profile

Charge tracking software

  • UI Design
  • Front-End
Profile

TamaTracker

Skill progress tracker

  • UI Design
  • Motion Design
TamaTracker