Spotify for the terminal written in Rust

Connecting to Spotify’s API

spotify-tui needs to connect to Spotify’s API in order to find music by name, play tracks etc.

Instructions on how to set this up will be shown when you first run the app.

But here they are again:

  1. Go to the Spotify dashboard
  2. Click Create a Client ID and create an app
  3. Now click Edit Settings
  4. Add http://localhost:8888/callback to the Redirect URIs - you don't need anything running on localhost, it will still work
  5. You are now ready to authenticate with Spotify!
  6. Go back to the terminal
  7. Run spt
  8. Enter your Client ID
  9. Enter your Client Secret
  10. You will be redirected to an official Spotify webpage to ask you for permissions.
  11. After accepting the permissions, you'll be redirected to localhost (blank webpage, might say something like "Connection Refused" since no server is running), copy the URL and paste into the prompt in the terminal.

And now you are ready to use the spotify-tui 🎉

You can edit the config at anytime at ${HOME}/snap/spt/current/.config/spotify-tui/client.yml.


The binary is named spt.

When running spotify-tui press ? to bring up a help menu that shows currently implemented key events and their actions.


This app uses the Web API from Spotify, which doesn't handle streaming itself. So you'll need either an official Spotify client open or a lighter weight alternative such as spotifyd -

If you want to play tracks, Spotify requires that you have a Premium account.

Built with ♥️ from the Spotify TUI upstream source at


Get it from the Snap Store

Search for another snap, or go back to the homepage.