A fast music player for the terminal and the desktop, written in Rust.
Spotify through its own built-in client, plus local files, Subsonic/Navidrome, internet radio, YouTube and Qobuz, and Apple Music on macOS.
Install · Docs · Desktop app · Contributing · Discord
Table of Contents
- About
- Installation
- Quickstart
- Sources
- Learn more
- Contributing
- Song History
- Star History
- Maintainers
- Code signing policy
- spotatui Contributors
About
spotatui is a music player for the terminal, with a desktop app in preview. Spotify is optional: it is one of seven sources.
- Synced lyrics, and a real-time audio visualizer.
- A play queue that mixes tracks from different sources.
- Playlist sync: mirror one playlist onto Spotify, Qobuz, Subsonic or YouTube.
- Lua plugins for commands, keys, popups and themes.
- An AI DJ inside the app, or your coding agent as the DJ over MCP.
- A local listening history with stats and a shareable recap.
- A CLI for playback, search and playlists.
Spotify needs Premium. spotatui logs in with its own built-in client, so you need no developer app and no client ID.
spotatui started as a fork of spotify-tui and has since grown its own player, sources and desktop app.
Installation
Spotify is optional: every other source works without an account.
| System | Command |
|---|---|
| macOS, Linux, WSL | curl -fsSL https://spotatui.com/install.sh | bash |
| Windows | irm https://spotatui.com/install.ps1 | iex or winget install spotatui |
| Arch Linux | yay -S spotatui-bin |
| With Rust | cargo install --locked spotatui |
Homebrew, Nix, Void, .deb packages and building from source are in the installation guide.
- Desktop app: download the installer for your system from the latest release. See Desktop app.
- Features per build: the prebuilt terminal binaries include every source, the MCP server and the AI DJ.
cargo installbuilds Spotify only unless you add the features, and the Nix flake builds Spotify only. - Updates: the terminal app updates itself. If a package manager installed it, set
behavior.disable_auto_update: true. See Updating.
Quickstart
Run spotatui. The first launch asks which sources you want. Pick Spotify to log in: spotatui shows a code and opens Spotify's pairing page, where you confirm it.
Then:
?lists every key./searches. Choose the Songs panel with the arrow keys, pressEnterto go into it, andEnteragain to play a track.dswitches the source and the device.zqueues a track, andShift+Qopens the queue.spotatui --helpshows the CLI.
Sources
| Source | You need |
|---|---|
| Spotify | A Premium account |
| Local Files | A music folder |
| Subsonic / Navidrome | A server account |
| Internet Radio | Nothing (30k+ stations from radio-browser.info) |
| YouTube | yt-dlp on your PATH |
| Qobuz | A paid Qobuz account |
| Apple Music | macOS and the Music app |
Local Files, Subsonic, Internet Radio, YouTube and Qobuz play through spotatui's own audio engine. Apple Music plays in the Music app, and spotatui is its remote. The setup of each source is in Configuration.
Spotify plays in spotatui itself, on any Spotify Connect device, or on Cast and Connect speakers on your network. See Where Spotify plays.
Learn more
| You want to | Read |
|---|---|
| Install another way, or build from source | Installation |
| Change settings, keys or the theme | Configuration, Keybindings, Themes |
| Control spotatui from your shell | CLI |
| Write or install a Lua plugin | PLUGINS.md, Scripting API |
| Let an AI pick the music | AI DJ, MCP setup |
| Report a bug | New issue, with a spotatui --debug log |
| Everything else | All docs |
Contributing
spotatui is built by a small team and a growing group of contributors, and you do not need to write code to help. Start with CONTRIBUTING.md, or pick a good first issue.
Native playback and Spotify Connect run on our librespot fork, spotatui-librespot. It is part of the project: a merged PR there counts as a spotatui contribution. See Contributing to the librespot fork.
Song History
Star History
Maintainers
Originally forked from spotify-tui by Alexander Keliris. The spotify-tui contributors and the libraries spotatui uses are in CREDITS.md.
Code signing policy
Free code signing provided by SignPath.io, certificate by SignPath Foundation.
The Windows release files are built from this repository by the release workflow on GitHub-hosted runners. Each signing request is approved by hand.
- Committers and reviewers: LargeModGames, ThatModGames, shilicioo, 2570165831, Oud
- Approvers: LargeModGames
Privacy: see the privacy policy for the data spotatui sends and how to turn each part off.
spotatui Contributors
Everyone who helped, with code or without. To get on this list, see Recognition.
This project follows the all-contributors specification. Contributions of any kind welcome!

