Music discovery & listening
WavHaven
Make listening worth spending time with.
A place to discover, listen to and share underground music, shaped by my own life as a producer.
My contribution. I set the product and visual direction, diagnose problems and test the experience. The Mantequilla renderer code is agent-written; I directed its research and iteration. The first version was a collaboration, followed by my rebuild in September 2025.
- My role
- Product direction, visual design & AI-assisted development
- Period
- 2025–ongoing
- Built with
- React · TypeScript · Cloudflare Workers · D1 + R2 · Stripe Connect · WebGPU

Let the music set the atmosphere.
As a producer, I wanted somewhere people could spend time listening and sharing, whether a track was for sale or not. Game consoles inspired the feeling: visual character, sound and a place you remember.
I directed a more expressive visual identity while keeping track information and controls readable. The interface pairs scene-based discovery with a persistent player; the visualizer supplies atmosphere around the listening task.
Browse, play, keep the context.
In the live flow captured here, a track starts directly from Explore. The current selection appears in a now-playing panel and a bottom transport while the catalog remains on the page.
At this desktop width, opening playback reduces the number of visible catalog columns. That is a real density tradeoff, and a focus for the next comparison test rather than a claimed usability win.
Make the license choice visible.
From the now-playing panel, License this track opens the actual license selector. Selecting Basic changes the action to $25; selecting Premium changes it to $45. The selected tier, included files and action price stay together.
I checked those two states on the public site for this case. The capture demonstrates selection feedback; no checkout or purchase was made.
Directing the visualizer.
I moved the visual direction through ASCII, MilkDrop/Butterchurn and the custom Mantequilla WebGPU renderer. My contribution is diagnosis, research, creative direction and testing; the renderer implementation was written by agents.
The design challenge is keeping expressive motion compatible with reading and choosing music. A striking frame alone does not establish comfortable long-term listening or improved retention.
What I’ll test next.
Three producers beyond me have uploaded to the open beta. There have been no external purchases, and my own purchase/refund was a test.
My next test is the transition between browsing and focused listening: preserve enough comparison space, keep a clear primary control and check text against changing visual backgrounds.
Outcome & next test
Released open beta. Three other producers have uploaded music. There have been no external purchases; my own purchase was a refunded test.
The next design test is whether discovery remains easy to scan while the now-playing panel and transport are open.
Have a project in mind?
I’m open to product engineering roles and contract work.