Skip to content

Oxidify v0.5.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 00:29
7318e20

Oxidify 0.5.0

Search shows results as they arrive, the Liked Songs control works in two presses, alternate playback keeps honest time, and the library can be a grid.

Search is fast again

A search used to be one request for every kind of result, sent through the shared Spotify app, where a rate-limit pause could hold the whole page for ten seconds. It is now two requests at once: the catalogue (songs, artists, albums, podcasts, episodes), which goes through your personal Spotify app when you have one, and the playlists, which only the shared app may look for. Each half shows the moment it lands, with a spinner for the other, and typing on cancels any half still travelling instead of queueing it behind the new search. A failed half leaves the other's answers up.

Liked Songs in two presses

The plus beside a song adds it to Liked Songs. Once the song is there, the check that replaces it no longer removes it on a slip of the mouse: it opens where else the song can go. Remove from Liked Songs sits at the top, then the playlists you can edit, filtered as you type; Enter adds to the first match, and playlists that already hold the song show a check. The same control sits in every track row, the player bar, and the Now Playing view. The player bar's right-click menu also offers Remove from this playlist while a song plays from a playlist you can edit.

Alternate playback keeps time

A third-party match is rarely exactly as long as Spotify's recording, and the bar used to count against Spotify's length: the position stuck at the end while the audio played on, or the song ended with time still showing. The bar now takes the matched recording's own length as soon as its headers are decoded, so the time, the end, and seeking follow what is actually playing.

Library, lyrics, and colour

The library's view control gains a Grid of covers beside the list and compact rows, each tile opening, taking a dropped song, and answering a right-click like its row. The Liked Songs tile has a violet-to-mint gradient with a white heart. The line being sung sits a third of the way down the lyrics panel so the lines to come fill the view. Settings too narrow for a control beside its words put the control on its own line. The player bar fades from one song's colour to the next instead of jumping. The accent stays Oxidify's blue, deepened on the light theme so playing titles stay readable; Settings → Appearance → Accent offers a green instead.

Compatibility

Settings files from earlier versions load unchanged: the accent is blue unless accent says green, and the library opens as a list unless sidebar_grid is set. Free-account alternate playback keeps its routing; this update adds no Spotify playback capability to Free accounts.

Downloads

Windows installers and portable ZIPs are available for x64 and ARM64. The macOS DMG contains a universal app for Apple Silicon and Intel. Linux archives are available for x64 and ARM64. checksums.txt lists SHA-256 hashes; the provenance file identifies the source commit and build run.

Automated tests run on Linux, macOS, and Windows, including headless renders of every page and panel and engine tests for the alternate playback timer and the split search. The interface was exercised on Linux in demo mode; macOS and Windows were compiled and tested by CI, not driven by hand. Live Spotify-account playback and live search timings were not measured for this release.

Windows SmartScreen or macOS Gatekeeper may warn about an unsigned download. See the installation guide for platform instructions.