Repository navigation
Features Browsing and Playlists
Chris Funderburg edited this page Oct 1, 2026
·
2 revisions
How you find music, queue it, and organise it into playlists. This page is part of the Feature List and describes shipped functionality only.
- Sidebar sections: Songs, Albums, Artists, Genres, Composers, Podcasts, and Radio under the local library; Subsonic servers under Sources; Recently Added, Recently Played, Most Played, and History under Recents; Up Next; and Playlists with folders.
- List or album-grid views for Artists, Genres, and Composers, toggled in-view or from the View menu. Grid cards show a 2x2 mosaic of that collection's album covers. The choice is remembered per section.
- Flexible sorting for Albums, Artists, Genres, Composers, and Podcasts (by name, count, year, unplayed episodes, and more), remembered across launches.
- Album-artists filter. The Artists view can hide one-song guest credits and "feat." appearances; the funnel icon fills while the filter is active and the choice sticks.
- Type-to-search anywhere. Start typing over any view and the first letter jumps straight into the search box; ⌘F focuses it too. Search is SQLite FTS5 full-text across tracks, albums, and artists, and the search box filters every browse view: genres, composers, radio stations, podcast shows, and the episodes inside a show. Type a year such as 1984 over the album gallery to filter to that release year.
- History view under Recents lists every play, one line per play, newest first, with its own search. A Source control shows plays recorded in Bòcan, listens imported from Last.fm, or both. A play of a song whose file has gone missing stays in the list, greyed out.
- Sort chains. A click on a column header sorts all the way down: sort by Artist and each artist's albums stay together with their tracks in order. The choice is remembered across launches.
- Browse history with toolbar back/forward chevrons, ⌘[ and ⌘], and mouse thumb-button support.
- Esc drills out sensibly: it leaves search, cancels renames, and closes sheets first, then climbs from an album to the artist you came from to the Artists list.
- Position memory. Scroll halfway down a list, open something, and going back returns you to the same spot. Column order and scroll positions persist across launches.
- Double-click any album cover to play it; a single click opens its track list.
- Deep track table: more than two dozen optional columns including Codec, Bitrate, Sample Rate, Bit Depth, Channels, Lossless, BPM, Key, Plays, Skips, Rating, Loved, Date Added, Last Played, File Size, and MusicBrainz ID, with saved order and click-to-sort headers.
- A rich context menu on every track: play now/next, queue, playlists, love and rate, shuffle exclusion, go to artist or album, lyrics, Show in Finder, re-scan, Get Info, Identify Track, ReplayGain, and removal actions.
- Up Next (⌘⌥U) is a drag-reorderable list and a drop target; missing files are marked and explained. Drag a streamed Subsonic song straight in alongside local tracks.
- Full queue operations: play from here, play next, move to bottom, insert, remove (playback advances safely if you remove the current item), reorder around the playing track, clear (⌘⇧⌫).
- Live playlist sync. Add or remove tracks from a manual playlist while it plays and Up Next updates immediately. Sequential mode keeps your position and reorders around it; shuffle drops removed tracks and slots new ones in.
- Repeat modes off, all, and one, cycled with ⌘⇧E. Repeat-one only governs automatic end-of-track advance; pressing Next deliberately moves on, matching Apple Music and Spotify behaviour.
- Seeded shuffle. Turning shuffle off restores the original order from the current item. Two strategies ship: classic Fisher-Yates and Smart Shuffle, which weights by rating, loved status, and play count, penalises tracks played in the last 24 hours, and spaces out same-album tracks.
- Per-track shuffle exclusion from the context menu or a table column.
- Queue persistence across launches, and a crash-recovery banner after an unclean exit offering Recover or Start Fresh.
- Play and skip recording feeds play counts, skip counts, last-played dates, and the scrobblers, including for streamed Subsonic songs.
- Manual playlists (⌘⇧N), smart playlists (⌘⌥N), and playlist folders, nested arbitrarily, each with an optional accent colour.
- Sortable manual playlists. Click a column header to browse sorted; your hand-arranged order is kept underneath and a "Playlist Order" button returns to it. Drag-to-reorder pauses while a column sort is active so the saved order is never scrambled.
- Smart playlists compile to live SQL and update automatically as the library changes. Around thirty rule fields (title, artist, genre, year, play count, skip count, rating, BPM, bitrate, duration, date added, last played, loved, lossless, has-artwork, has-lyrics, file format, playlist membership, path, and more) with a full comparator set including regex matching, date windows ("in last N days/months/years"), ranges, and null checks, combinable in nested AND/OR groups.
- Multi-key sorting with priorities (say artist, then track number, then title), each ascending or descending, plus on-the-fly column-header re-sorting.
- Live versus snapshot mode per smart playlist, with a configurable debounce and a manual refresh for snapshots.
- Starter smart playlists seeded on first run: Recently Added, Top 25 Most Played, Unrated, Loved, Never Played, Five Stars, High Bitrate.
- Import M3U, M3U8, PLS, XSPF, and CUE (⌘⌥⇧O), with fuzzy track matching and a preview of matched, missing, and station counts. Stream URLs inside imported playlists become radio stations instead of missing tracks.
- Export M3U, M3U8, PLS, and XSPF with absolute or relative paths.
bocan.app · Source · Report an issue · Releases · Apache 2.0
Features
- Overview
- Playback and Sound
- Formats
- Library
- Browsing and Playlists
- Interface
- Sources and Sync
- Privacy and Engineering
User Guide
In-App Help
- Getting Started
- Podcasts
- Internet Radio
- Subsonic Servers
- Keyboard Shortcuts
- Mouse Buttons
- Supported Formats
Developer Documentation
Design Notes
Links