What's new and changed
- NEW Cider Remote for iOS (Testflight)
- Rebuilt with Swift UI and utilizes the latest REST API capabilities
- Optional WAN tunneling to allow for seamless connections
- Remote can be connected from Main Menu / Help / Connect a Remote App
- Android remote coming soon
- Added notification for Plugin and Theme updates on startup
- Can be disabled under Settings / Extensions
- Added Updates section to the in-app Marketplace
- Updated to Vue 3.5.3
- (Windows) Double clicking the title bar maximizes the window
- (macOS) Window can now be dragged from empty sidebar region on when using Calico or Montara
- Added Submit Your Theme/Plugin to Marketplace
- Added "Fyre" Immersive Sing Preset
- Added Enable Static Lyrics under Visual / Lyrics
- Added "Publish in profile and search" checkbox to editable playlists
- Added Tweaks / Lyrics / Line Staggering
- Added Tweaks / Lyrics / Line Staggering (Immersive)
- Improved lyric scrolling appearance
- Language can now be automatically selected
- Rename the "Sing Along" button to "Focus Mode" to better reflect its purpose.
- Update the title of the sing options modal to "Focus Mode Settings" for clarity.
- Song URLs can now be played directly with Apple Music URL
- Immersive will stay in fullscreen on macOS when exiting
- Removed broken glass effect on Media Item Properties
- Fixed issue where Socket.IO API was not emitting playback events on macOS or Linux
- Fixed WebSocket port always being 0
- Fixes Discord RPC option being grayed out on OOBE for Windows
- Fixed Third Party Lyrics appearing when disabled
- Fix missing volume percentage in Miniplayer
- Fixed MPRIS artwork not displaying on Linux
- Fixed play later shortcut on Command Palette (Shift + Z)
- Fixed ImmersiveCoverflowPlayer sfc-name attribute
- Previously: "ImmersiveCoveflowPlayer"
- Fixed Apple Music URL dialog not being closable with ESC
- Fixed issue where macOS and Linux clients weren't using RPC properly
- Under the hood fixes for content loading
API Changes
- Remote connection spec and tunneling API (docs pending)
- Used by the new Cider Remote for iOS
- WSAPI
playbackStatus.nowPlayingStatusDidChange
is now called when library status changes - Added Remote Device pairing QR code in External Apps section
- Added external messages API, allows for messages to be sent over the REST API for code on the client to listen to (one-way)
POST
/api/v1/messages/message
- Body takes a
type
which is the name of the listener and a data
property is what gets sent
- Themes can now query the
[theme-hint-uses-artwork-color]
to help with identifying elements that use artwork color - Added
body[app-mode]
with possible modes being: browser
, miniplayer
, immersive
/api/v1/playback/queue
now properly returns the queue- Added
POST
/api/v1/playback/queue/move-to-position
- Added
/v1/lyrics/:id
- :id
is an ID for a media item. Returns an array of lyrics. - Added
/v1/lyrics/:id
, automatically infers library or catalog based on ID /api/v1/playback/play-url
- Takes a url
in body and will immediately play the item or track associated with the URL/api/v1/playback/play-item-href
- Similar to play-url but takes an API href instead/api/v1/playback/play-later
, /play-next
, /play-item
- Takes id
and `type/api/v1/playback/queue/change-to-index
- Jumps to and plays the index requested. Takes index
(number) in body- POST
/api/v1/playback/queue/remove-by-index
- Takes index
in body - POST
/api/v1/playback/queue/clear-queue
- GET
/api/v1/playback/shuffle-mode
- Returns status as data.value - GET
/api/v1/playback/repeat-mode
- Returns status as data.value - GET
/api/v1/playback/autoplay
- Returns status as data.value - GET
/api/v1/playback/library-status
- Returns up to date library status and rating for current track - Exposed ListItemProviderLogic to plugins
- More components exposed via CComponent (to be updated on the boilerplate soon)
Patches
- Fixed
/set-rating
RPC endpoint
- Fixed Discord RPC for iCloud uploaded tracks
- Fixes New Playlist Folder option not doing anything