Marusic
An educational reference for how a streaming-player UI, media proxy, invite-only auth, UPnP/Cast output and a PWA fit together. Search and metadata go through the YouTube Music Innertube API; audio is resolved with yt-dlp and proxied with Range support. Includes a Kotlin Android Auto companion.
* Educational reference only — not affiliated with YouTube, Spotify or Sonos.
focus
Product-level polish on a solo project: full-screen mobile now-playing, gapless-ish prefetch, playback surviving reloads, drag-to-reorder playlists, and synchronized multi-device jam sessions where any member can be a remote control.
milestones
01
Invite-only accounts with scrypt-hashed passwords, cookie sessions in SQLite, login rate limiting and an admin panel
02
Jam sessions: shared queue, one speaker, live progress and control over server-sent events; host handoff if the host leaves
03
Cast to smart TVs and Sonos over UPnP/DLNA from any browser; PWA install; Kotlin Android Auto app
04
Per-user libraries, radio stations, daily mixes, lyrics, quality selector, FLAC/MP3 export via bundled ffmpeg
05
Content-type visual language so playlists, singles, albums and stations read at a glance
