Repository navigation
Riff 43
v43
New sidebar, Updated Material 3 UI, a new full-screen mode, Last.fm scrobbling, favorite artists on the home screen, "My Mix" feedback, automatic fallback to YouTube for DRM-protected tracks, playlist import from Yandex Music and JSON, a sleep timer, Riff share links, and source code reorganized into the src/ directory.
UI & Animations
-
Sidebars (main and settings) updated to Material 3 color palettes. The selection pill now glides smoothly between items.
-
New Material 3 style switches.
-
Play/pause button squishes slightly on press and smoothly morphs between icons.
-
Gooey blend effect for the audio editor pop-up near the bottom player bar (can be turned off).
-
Track time in the player bar auto-hides after half a second of mouse inactivity.
-
Thin 5px scrollbars that smoothly fade out when idle.
-
New Spotify-style home layout (can be enabled in settings).
-
Changed home icon button to Riff logo button with 12 custom cool icons.
-
Theme color saturation settings now affect both background and accents (with a separate toggle).
-
Fully redesigned playlist creation dialog with an import button right inside it.
-
Material 3 shaped album art: click to change shape, long press to open a zoom loupe. Separate toggles for player and karaoke screens.
-
Inline editing for playlist title and description directly on the playlist page.
-
App splash screen with an animated vector logo on startup.
Lyrics & Full-screen Mode
-
New smooth easing curve for lyrics scrolling.
-
Long lyrics animate line by line without layout jumps.
-
Full-screen mode now features an animated multi-layer blurred background made from the current album art.
-
Full-screen player got a bottom seek bar, a down-arrow close button, and a slide-out top panel with fullscreen mode settings.
-
A compact audio visualizer is shown during instrumental breaks.
-
Backing vocals in parentheses are automatically dimmed.
-
Automatic cleanup of Genius section labels in brackets (like
[Verse]or[Chorus]). -
Manual lyric sync now applies immediately without cache issues.
Library, Streaming & System
-
Last.fm integration: scrobbling, "Now Playing" status, and in-browser login.
-
Favorite artists on the home screen: a dedicated Spotify-style row and a page in the Riff carousel. Shows play count, follow button, and quick access to top tracks. Added a follow button to artist pages as well.
-
Added like and dislike buttons to "My Mix" recommendations ("Do you like this track?"), shaping future mixes.
-
Automatic fallback to YouTube or YouTube Music streams if a track is DRM-protected or fails to load. Playback also recovers if a stream drops mid-track.
-
Import public playlists from Yandex Music (
/api/yandex-import), plus.jsonplaylist import in integrations, create playlist dialog, and storage settings. -
Saved albums section in the sidebar and higher track limits on artist pages.
-
Automatic UI translation into multiple languages with language choice on the welcome screen and saved translation files.
-
Sleep Timer in audio settings: auto-pause with a smooth fade-out after 15, 30, 45, 60 minutes or at the end of the track.
-
Riff links (
riff://and web links) for quick track sharing with automatic stream matching for the recipient. -
Discord RPC: shows the real current track cover and a listen button.
-
Riff account backup and restore using a compact binary
.rfaccformat. -
Background IPC daemon for
storage.jsonto prevent file corruption during writes. -
Source code organized into clean folders:
src/main,src/server,src/shared,src/renderer, along with an updated Nix flake.
Removed Features
-
Removed forced GPU auto-perf-mode, which was causing stutter in the UI.
-
Removed active lyric line scaling that caused nearby lines to jump.
-
Removed the experimental fade-up word animation.
-
Removed the playlist format dropdown in the create dialog (simplified import flow).
-
Removed the legacy duplicate welcome screen
riff-welcome.html.
Bug Fixes
-
Fixed a memory leak in the server by setting a limit on the in-memory cache size.
-
Fixed Spotify login issues and freezing when importing large Spotify playlists.
-
Fixed artist album lookup and import from Apple Music and SoundCloud.
-
Fixed track duration display in lists.
-
Fixed UI freezing when exiting manual lyric sync mode.
-
Fixed toast notification buildup — old alerts no longer pile up indefinitely.
-
Fixed the close button getting blocked in full-screen fullscreen mode.
-
Fixed smooth width animation reset on the play/pause button when hovered.
-
Fixed the shape of shuffle and repeat buttons.