A fast, configurable terminal music player for Spotify with full feature parity, streaming, and audio visualization.
spotify_player is a terminal-based Spotify client that provides a complete music streaming experience directly from the command line. It offers feature parity with the official Spotify application, including local streaming via librespot, remote control via Spotify Connect, and a highly customizable minimalist interface. It solves the need for a lightweight, scriptable, and feature-rich Spotify client that operates entirely within a terminal environment.
Developers, system administrators, and power users who prefer terminal-based applications and want a full-featured Spotify client that integrates with their command-line workflow. It is specifically for users with a Spotify Premium account, as required for streaming.
Developers choose spotify_player for its comprehensive feature set that matches the official app, including local streaming, Spotify Connect, and audio visualization, all within a terminal. Its unique selling point is the combination of being highly configurable, scriptable via CLI commands, and offering a daemon mode for background operation, making it ideal for automation and integration into development environments.
A Spotify player in the terminal with full feature parity
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Matches the official Spotify app with local streaming, Spotify Connect, synced lyrics, and audio visualization, offering a complete terminal experience without a GUI.
Extensive configuration options for UI themes, keymaps, and audio backends allow users to tailor the interface and functionality to their workflow.
Provides scriptable commands that output JSON, enabling easy integration with shell scripts and tools like jq for automated playback and playlist management.
Supports media keys via MPRIS on Linux and OS events on Windows/macOS, ensuring seamless playback control across different operating systems.
Requires Rust, cargo, and platform-specific libraries (e.g., openssl, alsa-lib on Linux), making setup more complex than pre-packaged or binary-only alternatives.
Album art display is limited to specific terminals like Kitty or iTerm2 for full resolution; others rely on block characters or Sixel graphics with scaling issues.
Daemon mode is unavailable on Windows, and notifications are less robust on macOS and Windows, reducing functionality parity across all platforms.