Skip to main content

Tuatara is a text-mode music player.

Project description

tuatara

tuatara is a text-mode music player, written in Python.

Description

tuatara plays local music files. It can play single files, or play an entire music library.

Features

  • Simple keyboard controls
  • Shuffle mode
  • Basic playlist support via .m3u files
  • Integrated cover art display
  • Dynamic background color
  • Visualization support

tuatara is not intended for interactive browsing of your library; tell it what to play, and it plays it.

Screenshot

Screenshot

Usage

To start with tuatara, just pass a file, directory of music files, or a URL on the commandline.

Example:

tuatara /path/to/my/music/library /path/to/some/other/files

You can pass multiple files or directories to play on the command line.

Controls

tuatara is controlled by the keyboard. Basic keys are:

  • Space bar: toggle Play/Pause
  • 'p', PageUp: Previous track
  • 'n', PageDown: Next track
  • 'm': Toggle mute
  • 'h', '?': Show full keybindings
  • 'q': Quit

Controls are not case-sensitive.

For more comprehensive documentation on features, usage, controls, and configuration, see the manual.

Requirements and installation

System requirements:

  • Python >= 3.11
  • GStreamer (with appropriate plugins)
  • GObject-introspection

Python requirements:

  • PyGObject
  • Pillow
  • urllib3
  • m3u8
  • blessed

tuatara can be installed from PyPI, or from the Releases page on GitHub.

To install from Pypi, run:

pip install tuatara

tuatara is only tested on Linux. macOS or Windows may theoretically work.

Development

When submitting changes:

  • Please add tests in tests/ if it is a testable change
  • Ensure code passes both lint and formatting with ruff (https://docs.astral.sh/ruff/)

License & Credits

tuatara is licensed under the GPL, version 3.0 or later.

Python ASCII art implementation inspired and cribbed from ascii-wizard and artem.

Why 'tuatara'?

The tuatara is a reptile, native to New Zealand. It is the sole surviving member of the Rhynchocephalia order; its lineage split from modern snakes and lizards well over 200 million years ago.

Hence, despite existing to this day, it appears to be a relic of a far bygone era. Much like this software.

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

tuatara-0.6.2.tar.gz (28.5 kB view details)

Uploaded Source

Built Distribution

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

tuatara-0.6.2-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file tuatara-0.6.2.tar.gz.

File metadata

  • Download URL: tuatara-0.6.2.tar.gz
  • Upload date:
  • Size: 28.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for tuatara-0.6.2.tar.gz
Algorithm Hash digest
SHA256 1da191b7ccb429915bb2889528045ea45c640b8c7fe4a0b501c4bf97ce5ae8a6
MD5 cd2635fc83ae2501589e776841948c36
BLAKE2b-256 6db6aac8d8b97f5e953018ac424f560d7785f1938e3f47ee50e0003491e7ac77

See more details on using hashes here.

Provenance

The following attestation bundles were made for tuatara-0.6.2.tar.gz:

Publisher: release.yml on wenottingham/tuatara

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tuatara-0.6.2-py3-none-any.whl.

File metadata

  • Download URL: tuatara-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 30.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for tuatara-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e695bac7cbe9c4cd8a840996ce603d8303e7b4e25d093c55502bb5e97bae638c
MD5 a71d9edccb7c36d54324451aeec05b9c
BLAKE2b-256 58d4c7ec7c445c34d81951fc87b64d7a127be13c36a158339703c739cda427ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for tuatara-0.6.2-py3-none-any.whl:

Publisher: release.yml on wenottingham/tuatara

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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