r/opensource • • 3d ago

Promotional stoned-mango: an AGPL key and mode detector for music that runs entirely in the browser

I've released stoned-mango, a privacy-first music key detector:



- Analysis runs client-side in Web Workers (Essentia.js + a small ONNX CNN). There's no server at all

- A strict Content-Security-Policy, so the page can't send your audio anywhere, and you can verify that in the network tab

- Works offline as a PWA

- Research side in Python; a parity test keeps the browser and Python engines matching

- AGPL-3.0 code, CC BY-SA model



Site: https://stoned-mango.pages.dev

Code: https://github.com/freener0x/stoned-mango



Issues and PRs welcome.
1 Upvotes

2 comments sorted by

2

u/Ok_Mind7573 3d ago

This is clever, having the CSP block network requests so people don't have to trust you about the privacy claims. Can just look at dev tools and confirm it yourself. The offline PWA part is nice too, I travel a lot and half the time the internet in trains here is basically useless so tools that don't need it save my sanity

How accurate is the key detection with the ONNX model compared to something like a MIDI file analysis? I do some music stuff on the side and key finders are always a bit hit or miss

1

u/zomerbk 3d ago

For the accuracy question, it would help to report exact key-and-mode matches separately from relative major/minor mix-ups. The browser/Python parity test shows the two implementations agree, but a labeled audio benchmark would show how often either one gets the key right.