Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. ncspot

ncspot

BSD-2-ClauseRustv1.3.4

A cross-platform, terminal-based Spotify client written in Rust, offering a lightweight and keyboard-driven music experience.

GitHubGitHub
6.6k stars266 forks0 contributors

What is ncspot?

ncspot is a terminal-based Spotify client written in Rust that allows users to stream music directly from their command line interface. It serves as a lightweight, resource-friendly alternative to the official Spotify desktop application, particularly for platforms lacking native Spotify support. The client leverages librespot for Spotify connectivity and provides a keyboard-driven, ncurses-based user experience.

Target Audience

Developers, sysadmins, and power users who prefer terminal applications, seek low-resource music players, or use operating systems like BSD that lack official Spotify clients.

Value Proposition

ncspot offers a minimalistic, efficient way to access Spotify without the overhead of a graphical interface, featuring native Vim keybindings and cross-platform compatibility. Its focus on terminal integration and low resource usage makes it ideal for development environments and headless systems.

Overview

Cross-platform ncurses Spotify client written in Rust, inspired by ncmpc and the likes.

Use Cases

Best For

  • Streaming Spotify music in a terminal or SSH session
  • Reducing system resource usage compared to the official Spotify app
  • Using Spotify on BSD or other unsupported platforms
  • Integrating Spotify playback into CLI-based workflows
  • Controlling music playback via keyboard shortcuts and scripts
  • Running a music player in minimal or headless environments

Not Ideal For

  • Users without a Spotify premium subscription
  • Projects requiring graphical interfaces with rich media visualizations like album art
  • Environments needing collaborative Spotify features such as social listening or shared queue management
  • Workflows that depend on podcast or video streaming from Spotify

Pros & Cons

Pros

Cross-Platform Compatibility

Runs on macOS, Windows, Linux, and BSDs, providing broad support for systems lacking official Spotify clients, as highlighted in the README.

Low Resource Footprint

Designed for minimal system resource usage with a documented resource footprint, making it efficient for headless or low-spec environments.

Keyboard-Centric Workflow

Includes Vim keybindings out-of-the-box, streamlining navigation and control for developers and terminal enthusiasts without additional setup.

Automation and Remote Control

Features an IPC socket for external control, enabling integration with scripts and automation tools for seamless workflow management.

Cons

Premium Account Requirement

Only works with Spotify premium accounts, excluding free users and limiting accessibility for those on basic plans.

Limited Visual Experience

Being terminal-based, it lacks graphical elements like album art displays or visualizations, which may reduce user engagement compared to GUI clients.

Niche Interface Complexity

The ncurses interface and reliance on keyboard shortcuts can have a steeper learning curve for users accustomed to point-and-click applications.

Building Dependencies

Compiling from source requires Rust and Python installations, adding complexity for non-developers or those in constrained environments.

Open Source Alternative To

ncspot is an open-source alternative to the following products:

Spotify Desktop
Spotify Desktop

Spotify Desktop is the desktop application for Spotify, providing a native interface for streaming music on Windows and macOS.

Frequently Asked Questions

Quick Stats

Stars6,634
Forks266
Contributors0
Open Issues194
Last commit5 days ago
CreatedSince 2018

Tags

#spotify-client#keyboard-driven#ncurses#cli-tool#terminal-app#cross-platform#rust#music-player

Built With

n
ncurses
R
Rust
l
librespot

Included in

Rust56.6k
Auto-fetched 22 hours ago

Related Projects

SpotifydSpotifyd

A spotify daemon

Stars10,666
Forks501
Last commit11 days ago
Spotify PlayerSpotify Player

A Spotify player in the terminal with full feature parity

Stars6,811
Forks355
Last commit25 days ago
rmpcrmpc

A modern, configurable, terminal based MPD Client with album art support via various terminal image protocols

Stars2,974
Forks98
Last commit5 days ago
GlicolGlicol

Graph-oriented live coding language and music/audio DSP library written in Rust

Stars2,972
Forks98
Last commit1 year ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub