Hacker News new | ask | show | jobs
Show HN: Drift FM – Ambient Mood Radio (Go, SQLite, Vanilla JavaScript) (drift.1mb.dev)
3 points by vnykmshr 140 days ago
Built an ambient mood radio. Pick one of 6 moods (focus, calm, late night, energize, groove, storm) and it plays continuously.

Tech: Go backend serving static files + API from single binary, SQLite for metadata, vanilla JS frontend with no build tools. PWA with offline support.

Content pipeline is automated: audio processing, normalization, Cloudflare R2 sync.

Running on a $4 VPS, 8MB memory usage. No framework, no React, no webpack.

drift.1mb.dev

3 comments

People should be listening to this and giving their opinions.

So far it's all music all the time, no talk, no commercials.

That's a level of perfection right there that few other forms of radio have ever achieved !

Mood radio you host yourself. Drop in your mp3s, tag them by mood, hit play - github.com/1mb-dev/driftfm
Sounds interesting but on iOS I can only see “calm” as an option.
Thanks for the report

Root cause was a race condition where the mood galaxy layout engine could run before the container had dimensions, stacking all 6 orbs at the same position (only "Calm" visible on top). Fixed with a layout guard that defers positioning to the next animation frame.

While it works fine on my desktop browser (very nice), FWIW I still see the same issue on my iPhone
Can you try hard refresh, I tested on a phone, loads fine