About this site
A fan-built visualization of KEXP's Six Degrees Week 2026.
What is Six Degrees Week?
For one week every other year, every DJ at KEXP picks up where the last left off — chaining song to song through shared band members, producers, samples, labels, covers, and other musical connections. One unbroken chain across one full week of broadcast.
Each show is built around a "target" artist — the baton the DJs must reach by the end of their set. When their show ends, the next DJ picks up from there, and the chain continues.
What is this site?
A fan-built visualization of that chain. Three views:
- The Chain — every song in order, with the connection between each pair, plus playable air breaks.
- The Graph — a force-directed constellation of every song and every bridge person.
- The Numbers — rankings, fun facts, and the biggest connectors.
You can play any song through Apple Music or Spotify if you have a subscription.
How it was built
The data flows through a pipeline:
- KEXP API — every song, air break, and DJ comment captured live during the broadcast.
- Audio capture — show streams pulled from the KEXP archive and saved as MP3s before they expire.
- Streaming resolution — each track matched against Spotify and Apple Music search APIs to find canonical playback URLs.
- MusicBrainz enrichment — credit roles for every song (members, producers, engineers, songwriters, session musicians).
- Whisper transcription — every air break run through OpenAI Whisper. 491 air breaks — 260,000+ words of DJ banter.
- Claude classification — every adjacent song pair sent to Claude Sonnet with full context (both songs, credits, DJ comments, transcript). Claude returns a primary connection type, all applicable types, the bridge person, and a human-readable explanation.
- Cross-reference — the bridge people Claude found by name (from DJ banter) are matched against MusicBrainz and added as graph nodes.
The stack
- Frontend: Astro + Vue islands. Static HTML for every page, Vue takes over for interactivity.
- Graph: sigma.js + graphology + ForceAtlas2 layout in the browser.
- Audio: Apple MusicKit JS, Spotify Web Playback SDK, and plain HTML5 audio for air breaks.
- Data: Supabase (Postgres) for live data, static JSON snapshots for fast page loads.
- Hosting: Vercel.
- Connection classification: Anthropic Claude Sonnet 4.6.
- Transcription: faster-whisper.
Credits
- The DJs of KEXP, who built the chain in the first place.
- KEXP for the API, the archive stream, and the music itself.
- MusicBrainz + the Cover Art Archive for the artist credits and album art.
- Anthropic for Claude.
- OpenAI Whisper for transcription.
KEXP 90.3 FM Seattle — where the music matters.