deniz.in

Markets

Weather

Loading weather

· via Hacker News – Front Page (native)

Spotatui brings native Spotify streaming and multi-source playback to the terminal

Spotatui, launched on Hacker News, is a Rust terminal music player that streams Spotify through a built-in native client and also handles YouTube, Qobuz, Subsonic, radio and local files.

Spotatui brings native Spotify streaming and multi-source playback to the terminal

A Show HN post that reached the Hacker News front page on 13 October 2026 introduced Spotatui, a music player written in Rust that streams Spotify through its own built-in client and, per the post's title, does so without the rate limits Spotify's web API imposes on third-party apps. Spotify is optional: the same player handles YouTube, Qobuz, Subsonic servers, internet radio and local files.

A fork that swapped the backend

According to the project's GitHub README, Spotatui began as a community-maintained fork of spotify-tui and has since diverged on several fronts. The biggest change is architectural. The original spotify-tui could only steer playback on an external Spotify Connect device, such as spotifyd or the official desktop client, while Spotatui ships a native client of its own: it plays Spotify audio directly and presents itself as a Spotify Connect device, with no official app or spotifyd in the middle. The README notes that this source requires a Spotify Premium subscription.

First-run login skips developer-app setup entirely. Spotatui displays a pairing code and opens Spotify's pairing page in a browser, where the user confirms the code, without registering a developer app or handling a client ID. The Show HN title positions this native-client approach as the way around the web API's rate limits.

One player, seven sources

On first launch the player asks which source to set up: Spotify, YouTube (which needs the yt-dlp binary), Subsonic or Navidrome (which needs a server), internet radio, local files, Qobuz (paid, logs in through the browser) and Apple Music on macOS (via the Music app, with an Automation permission). The free options require no Spotify account at all, and pressing d switches between sources at any time. Pressing z queues a track from any source, and the queue plays across every source before the current context resumes.

There is a build caveat. The prebuilt Linux, macOS and Windows binaries include the extra music sources, but a plain cargo install of the crate does not; those need feature flags for local files, Subsonic, internet radio, YouTube and Qobuz, plus Apple Music on macOS.

Lyrics, plugins and a desktop preview

Beyond playback, the README lists synced line-by-line lyrics, a system-wide FFT visualizer bound to the v key (alongside the pitch view inherited from spotify-tui for Spotify tracks), playlist syncing that mirrors one master playlist onto Spotify, Qobuz, Subsonic or YouTube at startup or on demand, and Lua plugins covering event hooks, commands, keybindings, popups and theming. A local listening history can generate a shareable HTML recap, and most of what the UI does is exposed through the CLI for scripting playback, search and playlists. The project also documents Discord Rich Presence, an AI DJ feature and MCP support, so a coding agent can drive the desktop app via a command only the terminal binary provides. Claimed footprint is roughly 78 MB of RAM while streaming, which the README contrasts with a full Electron client.

Speaking of the desktop: there is a preview desktop app that wraps the same player in its own window with a Spotify-style layout, including home, album and artist pages, a library and lyrics. It shares login, settings and history with the terminal app, only one of the two runs at a time, and the preview plays Spotify only. The installers are unsigned, so Windows SmartScreen and macOS Gatekeeper will complain on first launch. Installation options span a one-line shell script for macOS, Linux and WSL, Homebrew, cargo, the AUR, Void Linux, winget on Windows and a NixOS flake.

Why it matters

Terminal music players usually specialise: one tool for MPD-style servers, another for Spotify, another for YouTube. Spotatui's pitch is a single lightweight binary that treats Spotify as one source among many rather than the centre of the ecosystem, and free users can ignore Spotify entirely. For existing spotify-tui users it offers a documented migration path with the playback backend built in, removing the spotifyd dependency that the original required. If the rate-limit claim in the Show HN title holds up in practice, it sidesteps a constraint that has long frustrated third-party Spotify tooling. The MCP hook, meanwhile, makes it an early example of a music player designed from the start to be controllable by AI coding agents.

  • #rust
  • #spotify
  • #terminal
  • #open-source
  • #music

Related posts