Control Spotify From Your Terminal? This CLI Tool Makes It Easy
If you’re the kind of developer who lives in the terminal, you know the pain of constantly switching windows just to change a song or check what’s playing on Spotify. Tabbing out breaks your flow. What if you could manage your music without ever leaving your cozy command line?
Enter spotify-player, an open-source terminal application that brings full Spotify playback control right to your shell. It’s more than just play/pause—it’s a feature-rich, text-based Spotify client built for developers who prefer keyboard shortcuts over a mouse.
What It Does
spotify-player is a Rust-based terminal UI (TUI) that connects to your Spotify account. Once authorized, it provides a responsive interface inside your terminal where you can search for music, manage your playlists, control playback, and view track details—all with keyboard navigation. It runs as a standalone app, not just a simple API wrapper, giving you a persistent, interactive music dashboard.
Why It’s Cool
The immediate win is obvious: no more context switching. But the project goes deeper. It’s built with performance and customization in mind. The UI is snappy and intuitive, with a layout that shows your current playback, queue, and browsing panels all at once.
Some standout features:
- Full Playback Control: Play, pause, skip, shuffle, repeat, adjust volume, and seek within tracks.
- Rich Browsing: Search across Spotify’s library, explore your saved albums, playlists, and artists.
- Queue Management: View and modify your playback queue on the fly.
- Themable: Configure the color scheme to match your terminal aesthetic.
- Keyboard-Centric: Navigate entirely with Vim-like or custom key bindings.
It’s the kind of tool that feels like it was built by a developer for developers. The implementation in Rust ensures it’s fast and efficient, and the TUI framework (ratatui) provides a smooth, responsive experience that puts many GUI apps to shame.
How to Try It
Getting started is straightforward. You’ll need a Spotify Premium account (the free tier doesn’t support the necessary API for playback).
-
Install: The easiest method is via Cargo. If you have Rust installed, run:
cargo install spotify-playerCheck the GitHub repository for other installation options like pre-built binaries or package managers.
-
Authorize: On first run, the app will guide you through logging into your Spotify account via OAuth to grant permissions.
-
Play: Launch it with
spotify-playerand use the on-screen help (?) to learn the key bindings. Start by searching for a track or browsing your library.
Final Thoughts
As someone who hates breaking focus, spotify-player feels like a secret weapon. It turns music control from a distracting task into a seamless part of your terminal workflow. Whether you’re coding, SSH’d into a server, or just organizing your playlists, having a capable Spotify client that lives in the terminal is surprisingly powerful. It’s a polished, practical project that solves a real annoyance for developer-centric users. Give it a spin—you might never click the Spotify app icon again.
Follow for more cool projects: @githubprojects
Repository: https://github.com/aome510/spotify-player