♫ TERMINAL MUSIC PLAYER ♫

rs-pug

Neovim out of music players.
Search, queue, listen — no browser, no ads, no nonsense.

RUST + RATATUI
MPV + YT-DLP
MIT LICENSE
LUA PLUGINS
PROGRESS
- no track loaded
⌕ FEATURES
YT & SOUNDCLOUD
Search and stream from YouTube and SoundCloud directly in the TUI. Switch sources on the fly.
SMART QUEUE
Auto-discovers similar tracks from the same uploader or with matching titles to keep music going.
LOCAL PLAYBACK
Full local file support with metadata — Artist, Album, Title. Flat or organized folder view.
10-BAND EQ
Built-in and custom EQ presets stored as JSON. Press F to save your own from the Options tab.
AUDIO VISUALIZER
Dynamic, reactive audio visualizer rendered live in the terminal. Because terminals can be beautiful.
PLAYLIST LIBRARY
Create, delete, import and export playlists. History saved to SQLite. Import/export via context menu.
THEMES
5 built-in themes. Add your own as JSON in ~/.config/rs-pug/themes/.
LUA PLUGINS
Extend anything. Drop Lua scripts in the plugins folder — they react to keys, searches, and events.
MPRIS + MOUSE
Media key & playerctl support via mpv-mpris. Full mouse support: click tabs, scroll lists.
⬇ INSTALLATION
▸ ARCH LINUX (AUR)
# via yay
yay -S rs-pug-git
# or paru
paru -S rs-pug-git
▸ MANUAL (CARGO)
git clone https://github.com/JustRoccat/rs-pug
cd rs-pug
cargo build --release
./target/release/rs-pug
mpv media playback engine REQUIRED
yt-dlp stream URL resolver REQUIRED
mpv-mpris media keys / playerctl OPTIONAL
♫ NOW PLAYING
Nothing playing
› Press / to search · Tab to move focus
VOL
VOL 70%
◑ THEMES
DARK
LIGHT
NORD
GRUVBOX
MONO
⌨ KEYBINDS
▸ NAVIGATION & GLOBAL
Switch tabs15
Move focusTab
Move down / upj / k
Page scrollPgUp PgDn
Search/
Context menuc
Quitq / Ctrl+c
▸ PLAYBACK
Play / ConfirmEnter
Pause / ResumeSpace
Next / Previousn / p
Mutem
Repeat moder
Seek[ / ]