Sonicwave 0.2.0
What's changed
A place to land
- New Home page: a time-of-day greeting, a full-width "Jump Back In" card for the album you last played (with inline Play), and shelves for Keep Listening, Recently Added, Most Played, and Random — with a re-roll button when you feel lucky.
Your server, better informed
- Scrobbling (on by default, Settings → Playback): Sonicwave reports "now playing" when a track starts and submits the play once you're past half the track or four minutes — the same rules Last.fm and Navidrome use. Play counts, Recently Played, and any scrobbler your server relays to now stay in sync.
- Update your library from the app: File → Update Server Library (or Settings → Connection → Scan Library, with live progress) kicks off a server-side rescan.
Playback & audio
- AirPlay outputs: connected AirPlay routes now appear in the output-device picker, properly labeled. Sample-rate matching wisely steps aside for them (they run a fixed network clock — macOS handles the resampling).
- Clear errors instead of silence (or static): tracks the server can't stream in a decodable format now stop cleanly with a "Can't Play Track" alert that tells you what to do (enable server transcoding), instead of failing silently — or worse, playing loud static.
Around the app
- Resizable Now Playing panel: grab its leading edge and set it anywhere from 300 to 480 points; the width is remembered.
- Quick Look the cover art: click the Now Playing panel's artwork to see the full-resolution original.
- Show Album in Library (⇧⌘L, also by clicking the panel's album line) jumps from whatever's playing to its album page.
- Try it without a server: a one-click "Use Demo Server" button (shown only while nothing is configured) connects to the public Navidrome demo.
Project
- Sonicwave is now open source (MIT) with a website: https://thijsw.github.io/sonicwave/
- CI runs the full test suite on every push and pull request.
Full changelog: v0.1.2...v0.2.0