Skip to main content

headless music: for minimal cpu/gpu usage while listening to music

Project description

headless_music

A Spotify-inspired, terminal-based music player. headless_music brings music to your terminal with full-color ASCII album art and an endless recommendation queue.

Features

  • Spotify-inspired terminal UI with a modern 3-panel layout (built with rich).
  • Color ASCII album art (when available from Spotify).
  • Playlist-first playback for Spotify or YouTube playlists.
  • Endless radio mode that queues recommendations after the playlist ends.
  • Smooth, pulsing progress bar showing playback and loading status.
  • First-run configuration wizard for easy setup.
  • Cross-platform: runs on systems with Python and mpv.

Prerequisites

mpv is required as the audio backend.

macOS (Homebrew)

brew install mpv

Ubuntu/Debian

sudo apt update && sudo apt install mpv

Windows (Chocolatey)

choco install mpv

Installation

To install, simply use the Python package manager pip:

pip install headless_music

Usage

To start the player, type into your terminal

headless_music

On first launch a setup wizard will walk you through adding your Spotify API credentials. Obtain these from the Spotify Developer Dashboard: https://developer.spotify.com/dashboard/

Controls

Key Action
Space Play / Pause
n Next track
p Previous track
c Re-run the configuration wizard (stops playback)
q Quit

Configuration

  • Spotify API credentials (Client ID, Client Secret, Redirect URI) are required for full functionality.
  • The configuration wizard writes credentials to a user config file (see config in repo for format).
  • mpv path and additional mpv options can be set in the config.

Contribution

Contributions are welcome. Please open issues for bugs or feature requests and submit pull requests against main. Follow the existing code style and include tests for new functionality.

License

This project is licensed under the MIT License. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

headless_music-1.0.2.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

headless_music-1.0.2-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file headless_music-1.0.2.tar.gz.

File metadata

  • Download URL: headless_music-1.0.2.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for headless_music-1.0.2.tar.gz
Algorithm Hash digest
SHA256 63534ef9ed7f2850d2ee2e6a1f3b928d1de1a4f96f4d3982726ccfd31495c661
MD5 79dc18394dedabdb7f01e792ba7ef751
BLAKE2b-256 f4d68bbc6f1dd7b211bbb541c4e7106ad3e1d6d56e7f6fbc0ea1053088e9a42f

See more details on using hashes here.

File details

Details for the file headless_music-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: headless_music-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for headless_music-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 48535bf449fe40d16d663a8c748c0197ad638fe20807cd401da617ce4b19ceaa
MD5 3a96088e0342cb1100c9306e59ba3cdc
BLAKE2b-256 e231a8976e38bbf94ff0ae9e960693820789ebaba47b683a3e074f5e2212080b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page