DEVELOPMENTAviram Radio

Aviram Radio

One curator's continuous mix, crossfaded end-to-end

Role

Creator & Curator

Year

2026

Focus

Product Design · Audio · Strategy

Pause + Volume

Listener affordances

~150 lines deleted

Cuts after audit

The Challenge

Recommendation feeds optimize for engagement, not calm. Every audio app is a library to manage, a queue to pick from, an algorithm to second-guess.

The cognitive cost of "what to listen to" has gotten higher than the listening itself.

This started as a distraction-free YouTube wrapper. Then I audited my own work and realized I'd rebuilt the thing I was trying to escape. A personal library with stars and rankings. Spotify in a smaller font.

The Approach

Run the product through a seven-stage Jobs-Mode pipeline. Oracle, Say-No, Ethnographer, Experience Architect, Storyteller, System Integrator, Reviewer.

Every agent had to defend their decisions against one question: does this serve the future-state need, or are we adding choice the listener didn't ask for?

The thesis that emerged: removal of choice is the value, not the cost. The crossfade isn't a transition between tracks. The crossfade is the product.

The Solution

A continuous mix engine. The seed file is the CMS. Edit, push to main, the mix updates for everyone.

Two YouTube players run in parallel. One fades out as the next fades in via equal-power volume ramps on requestAnimationFrame.

Per-seed windowing lets long-form mixes coexist with short tracks. Lofi Girl plays for twenty-five minutes. Olivia Dean plays whole. The set is a ring; it loops silently. There is no end-of-set state because the curator is treated as infinite by design.

The Outcome

The listener tunes in and the next track is already on its way. The only act required of them is to leave it on.

Pause. Volume. Mute. That's the entire surface.

No skip. No favoriting. No save-for-later. Each one of those affordances was individually defensible. I killed all of them.

What I Learned

Auditing your own product is harder than building it. I'd built four interlocking systems that each made local sense and collectively rebuilt the recommendation feed I was trying to refute.

The hardest engineering decision was negative space. Drop Web Audio. Drop the engagement algorithm. Drop the entire frequencies storage layer. The first commit of the new architecture deletes about a hundred and fifty lines of working code I'd spent weeks tuning.

The hardest product decision was language. "Lock Signal," "Mark Signal," "Saved Frequencies." Every one of those nouns implied a personal library. The product is not a library. It's a broadcast. Killing the vocabulary was killing the wrong product.

Tech Stack

TypeScriptReactViteTailwind CSSYouTube IFrame APIVercel

Links

Next Project

Freelance Rate Calculator

Stop guessing your worth. Start charging what you deserve.