Compatibility Note: This plugin has been developed, tested, and verified to be stable and fully functional specifically on Fedora Linux 43 (Workstation Edition) with Kernel 6.19.12-200.fc43.x86_64 running DeaDBeeF 1.10.2. The project is now considered effectively complete. I will review and provide fixes as needed or reported from the community, but active feature development is finalized.
A faceted library browser plugin for the DeaDBeeF music player on Linux. It brings a Columns UI / Facets style multi-filter layout to DeaDBeeF, optimized for users who navigate large collections via metadata rather than static playlists.
DeaDBeeF is inherently playlist-focused. For users with libraries exceeding 10,000 tracks, navigating via manual playlists or simple searches is insufficient. deadbeef-cui bridges this gap by implementing a dynamic, multi-pane filter layout mirroring foobar2000's Columns UI.
The plugin drives DeaDBeeF's existing playlist view seamlessly. To prevent accidental deletion of your manual playlists, the plugin dynamically creates and targets a dedicated "Library Viewer" playlist. Selecting items in the facets automatically populates this playlist with the corresponding tracks, combining the power of faceted browsing with the player's lightweight core.
| Component | Description |
|---|---|
| Dynamic Columns | Configure 1 to 5 interactive list views filtering hierarchically. |
| Custom Formatting | Full support for DeaDBeeF title formatting syntax. |
| Integrated Search | Filter facets dynamically via a CTRL-SHIFT-F search bar. |
| Multi-Selection | Aggregate filters across multiple genres/artists via Ctrl/Shift-click. |
| Native Integration | Built as a native C++ GTK plugin using the DB_mediasource_t API. |
- GTK+ 3.0 development headers
- DeaDBeeF development headers (
/usr/include/deadbeef) - CMake (3.10+) & GCC
cmake -S . -B build
cmake --build buildmkdir -p ~/.local/lib/deadbeef
cp build/cui.so ~/.local/lib/deadbeef/ddb_misc_cui_GTK3.soEnter Design Mode in DeaDBeeF to add the Facet Browser (CUI) widget to your layout.
Inspired by the gold standard of library management: foobar2000 and its legendary Columns UI and Facets components.
