# bonob

> Self-hosted, open-source Sonos SMAPI implementation that connects Sonos speakers to Subsonic API compatible music servers like Navidrome and Gonic.

- **Category:** Media Streaming
- **Licence:** GPL-3.0
- **Latest version:** v0.15.0
- **Open source:** oss
- **Languages:** Typescript
- **Platforms:** Docker, Docker Compose
- **Tags:** Audio, Music Streaming, Navidrome, Sonos, Docker, Self Hosted, Subsonic, Smapi, Gonic

## Description

bonob is a self-hosted Sonos SMAPI (Sonos Music API) implementation that connects Sonos speakers to Subsonic API compatible music servers such as Navidrome and Gonic. It works with both Sonos S1 (local network only) and S2 (requires internet exposure) systems. Key capabilities include browsing music by artist, album, playlist, genre, year and other categories; searching by album, artist, or track; reporting now-playing information and scrobbling tracks after 30 seconds of playback; marking songs as favorites and assigning ratings from within the Sonos app; editing playlists; transcoding unsupported audio formats automatically via the OpenSubsonic extension or through custom mime-type rules; caching artist images; customizing the service icon colors shown in the Sonos app; and registering multiple instances within one household. The software runs as a Docker container listening on port 4534, requires a Subsonic-compatible server as a backend, and is configured entirely through environment variables.

## Links

- [Homepage](https://github.com/simojenki/bonob)
- [Docker](docker.io/simojenki/bonob)
- [Sonos S1 Setup Documentation](https://github.com/simojenki/bonob/blob/master/docs/sonos-s1-setup.md)
- [Sonos S2 Setup Documentation](https://github.com/simojenki/bonob/blob/master/docs/sonos-s2-setup.md)
- [GitHub Repository](https://github.com/simojenki/bonob)

---
Source: https://selfhost.directory/project/bonob