← Projects

Riffd

The Problem

Musicians can’t easily learn from songs they actually listen to. Every theory resource teaches concepts in the abstract — scales, chords, intervals — but nothing connects that to the real music you care about. You can’t pull up a song and immediately see what it’s built on, or hear each instrument on its own.

I wanted a tool that did both: show you the theory behind any song, and let you hear each part in isolation. Nothing combined those two things in one place.

What I Set Out to Build

A platform where you search any song and get: the individual parts (vocals, bass, guitar, drums) split out and playable on their own, plus a full breakdown of the musical theory behind how it’s constructed — key, chords, and structure. It needed to work in any browser with no downloads, handle multiple users at once, and start showing results before processing finished.

How It Works

You search a song by name or paste a YouTube link. The platform separates the audio into up to six individual parts — vocals, bass, drums, guitar, piano, and other — using an AI model built by Meta. At the same time, it analyzes the audio to detect the key, tempo, and chord structure. Results start appearing before the full separation is done.

Once processed, you get an interactive mixer in your browser — mute the vocals, solo the bass, adjust volume on any part, and loop sections while you play along. The key analysis shows what chords belong in the song’s key, common progressions, and how it relates to neighboring keys. An AI layer (Claude) adds plain-English theory context.

The Result

Riffd is live at riffdlabs.com. Search any song and within minutes you have the individual parts isolated, a full picture of the harmony, and an interactive mixer to play around with — no plugins or installs required.

Riffd key analysis — circle of fifths, diatonic chords, and common progressions
Riffd mixer — stem separation with per-track volume, mute, and solo controls

Stack

Demucs Meta’s AI model for audio separation — splits a song into up to 6 stems on cloud GPU with a second melodic pass
Basic Pitch Spotify’s pitch detection model — converts each separated part into note events for chord analysis
Essentia Key and tempo detection directly from the audio signal
Web Audio API Browser-based mixing engine — all playback, muting, and pitch control runs client-side with no server roundtrips
Claude API Generates plain-English theory context and chord progression explanations
Flask + Vanilla JS Lightweight Python backend, zero-dependency frontend. Concurrent job queue, deployed on Render