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) 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.1.1.tar.gz (17.2 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.1.1-py3-none-any.whl (23.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: headless_music-1.1.1.tar.gz
  • Upload date:
  • Size: 17.2 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.1.1.tar.gz
Algorithm Hash digest
SHA256 c5de46c5f90ff171979ebc3fdcb04e1dd1da0151a34a4725b0c352f18ffe56f3
MD5 302eb8114aa444b39a59ec5424b13fbc
BLAKE2b-256 659e8a841fb0f424d48aaafe4495466ea6220e2bae1f7e69b0413140362e6c12

See more details on using hashes here.

File details

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

File metadata

  • Download URL: headless_music-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 23.0 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.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 34966bd7f132d77a9923029ba79012c45090d0f7ffa3ff5727d5a7b561aa95a9
MD5 7cb8a26fc9b46231d37134d66313c246
BLAKE2b-256 2594542f02af67726a64fcc4b17d474ff273be440df626f0876c83f1c3afb207

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