shipping/JKT — 03:41 GMT+7/48.3 °C CPU/v 07.0 · build 2026.04.20
lat −6.200 · lon 106.816/ntwk · online/open for Q3 '26
/ project no. 01onchainmusic player
receipts demo walkthrough · apr 2025
volumeee

volumeee.

— short description

an onchain music player where every listen settles to base as a micro-royalty to the artist. webaudio, receipts in 2.1 seconds.

00:48
the listen landmarkreceiptswhat broke
03:11
katarin — nocturne at glasshouse
18,402· plays0.0021 eth· royalty settled28,118,402· block
sell · r&dfunded via zora grant · batch 03
design · engineeringsolo · full stack · mobile first
nov 2024 → aug 202510 months · shipped q3
stacknext · wagmi · zora · webaudio · passkey
live · mainnet4.2k daily listeners · 61 eth settled
01

context.

streaming services pay artists on a quarterly wire. the interval between the listen and the receipt is so long that the receipt stops feeling connected to the act. volume started as an experiment: what if you could settle a listen in real time, in public, at the unit of the second?

the working hypothesis was simple. rollups made the economics work — a settlement costs less than a tenth of a cent on base, which is already an order of magnitude below what a traditional service pays per play. the remaining work was product work: how do you make the receipt visible to the listener without turning a music app into a wallet app?

02

problem.

three things had to be true at once: the listener could never see a seed phrase, the artist had to be able to read a running royalty ticker on any device, and nobody in the middle could tamper with either. the first two were design problems. the third was the whole reason onchain was a non-negotiable choice.

2.1sfrom the moment a listen starts to the moment the artist's wallet receives the royalty. base mainnet, 99.4th percentile.
1.2Mlistens paid out across 41 artists. favorite project of 2024, on volume alone.
0 seed phrasespasskeys + embedded wallets mean first-time users can listen and pay without ever seeing a 12-word backup.
— approach

a hook, a contract, a receipt.

volume's whole runtime is one react hook (useListenReceipt), a 140-line solidity contract, and a webaudio worklet that watches for the 'listen landmark' — usually the 48-second mark for a standard track. crossing the landmark triggers a settle. the contract emits an event. the ui renders the receipt next to the waveform.

the whole thing is under 2,800 lines of production code. the first ninety days of listeners cleared 1.2 million mints across 41 artists. nothing about the code is interesting — all the interesting decisions are in the interface.

volumeee
fig. 02
"the waveform and the receipt share a horizontal rail. you stop checking a balance; you start watching a song finish."
fig. 02 — hero surface, crossing the listen landmark
— outcome

what shipped · what broke.

volume is still live. 4,200 daily listeners across the last quarter. 63 ETH of royalties have settled onchain since launch — not a blockbuster, but an honest number, and small enough that you can read every line in a public explorer. a handful of artists have retired their distrokid accounts.

three things broke that are worth writing down. one, the waveform worklet stalled on safari 17 for ~2 weeks until apple shipped a fix — i had to route around it with a wasm shim. two, a passkey interaction would lose focus on first-play and block settlement on iphone 12 — fix was a single prefetch. three, a small fraction of transactions were dropping silently during a base sequencer outage in march, and the ui didn't retry. that one i still don't love.

a production-quality demonstration that attention can be settled in public at the unit of the second. still my favorite project of 2024.
— on the record
— team

shipped with a short, deliberate team.

devrangga hiswaradesign · engineeringlead · solozellic · pass · 02.2025
katarin studiomusic · masterjan → aug 2025launch cohort · q3 '25
paul adnot · webaudioadvisory · mostly stagezora grants · batch 03
— screenshots

documented in the build.

8 months of stills — a path i'd like to expand. no retouches. all pulled from prod.

the full player
the full player.lane 4 · bob · dark mode · waveform sync · receipt settling
paper asset
paper asset.
/ fig 06.02 · static export
mobile receipts
mobile receipts.
/ every five public, readable on the explorer.
live machinet
live machinet.
/ weekly · receipts ledger · fraunces + geist
— responsive

mobile, first.

three moments from the 375x812 canvas — first spin, mid-listen with the receipt visible, post-settle. monthly iphone touch.

mobile first spin
mobile mid-listen
the receipt you weren't supposed to see.
mobile post-settle
oracle
/ up next — maybe the biggest oneprivate beta

oracle.

tool for designers who think in systems — mdx-dsl that compiles straight to framer motion.

open next case ↗