Your mixes are still ordinary Navidrome playlists that every client can read. This release adds a choice about how NaviBeat draws them, made here on the server rather than in the app.
Why here. A setting inside NaviBeat for a feature that lives in this plugin is a dead switch for everyone who never installed the plugin. NaviBeat's own "NaviBeat covers for generated mixes" toggle had become exactly that. It is removed from the app in the matching release, and the choice now travels with your server.
New settings
How NaviBeat draws them
- cover (default): NaviBeat's own generated artwork. What you have today, unchanged.
- button: a compact row of buttons with an icon instead of artwork tiles.
- mosaic: leave the server's usual 2x2 album grid alone.
Button icons and colours, when you pick buttons: an icon and a colour per mix family, all optional. Leave them empty and each family gets a sensible one, so the shelf reads as several different things rather than one thing repeated.
Nothing changes unless you change it
The default is the artwork every existing install already sees, and the per-mix button line is written only when you actually switch to buttons. Other clients are unaffected either way: the extra information rides on its own line that they ignore.
For anyone building a client
The wire format is documented in docs/PRESENTATION-WIRE-FORMAT.md. The one rule: never add a field to the nb1: descriptor line. It is parsed as exactly six fields by every shipped client, so a seventh makes all of them stop recognising the playlist as a mix.