A terminal client for *sonic music servers. Inspired by ncmpcpp and musickube.
- browse by folder
- queue songs and albums
- create and play playlists
- favorites
- volume control
- server-side scrobbling (e.g. on Navidrome, gonic)
- MPRIS2 control
These are using Navidrome's demo server (config file).
Queue:
Browser:
mpv:
- Linux (Debian/Ubuntu):
apt install pkg-config libmpv libmpv-dev
- MacOS (Homebrew):
brew install pkg-config mpv
(not the cask)
Go build dependencies)
stmp should compile normally with go build
. Cgo is needed for linking with libmpv.
stmp looks for a config file called stmp.toml
in either $HOME/.config/stmp
or the directory in which the executable is placed.
[auth]
username = 'admin'
password = 'password'
plaintext = true # Use 'legacy' unsalted password auth. (default: false)
[server]
host = 'https://your-subsonic-host.tld'
scrobble = true # Use Subsonic scrobbling for last.fm/ListenBrainz (default: false)
- Q - quit
- 1 - folder view
- 2 - queue view
- 3 - playlist view
- 4 - log (errors, etc) view
- Escape/Return - close modal if open
These are accessible in every view.
- p - play/pause
- P - stop
- > - next song
- -/= volume down/volume up
- ,/. seek -10/+10 seconds
- r - add 50 random songs to the queue
- Enter - play song (clears current queue)
- a - add album or song to queue
- y - toggle star on song/album
- A - add song to playlist
- R - refresh the list (if in artist directory, only refreshes that artist)
- / - Search artists
- n - Continue search forward
- N - Continue search backwards
- d/Delete - remove currently selected song from the queue
- D - remove all songs from queue
- y - toggle star on song
- n - new playlist
- d - delete playlist
- a - add playlist or song to queue