kew terminal music player screenshot

kew is a terminal music player.

Usage

kew creates a playlist with the contents of the first directory or file whose name matches the arguments you provide in the command-line.

kew cure great

This creates and starts playing a playlist with ‘The cure greatest hits’ if it’s in your music library.

It works best when your music library is organized this way:

artist folder->album folder(s)->track(s).

Example commands

Key Bindings

Basic

Advanced

Playlists

To load a playlist: type kew list <name>

To export a playlist, press x. This will save a file in your music path with the name of the first song in the queue.

There is also a favorites playlist function:

Add current song: press .

To load ‘kew list fav’: kew .

Themes

Press t to cycle available themes.

To set a theme from the command-line, run:

kew theme <themename> (ie 'kew theme midnight')

Put themes in ~/.config/kew/themes (~/Library/Preferences/kew/themes on macOS).

Do not edit the included themes as they are managed by kew. Instead make a copy with a different name and edit that.

Try the theme editor (by @bholroyd): https://bholroyd.github.io/Kew-tip/.

Configuration

Linux: ~/.config/kew/

macOS: ~/Library/Preferences/kew/

Key bindings can be added like this:

bind = +, volUp, +5%

If you have an old install of kew, delete the kewrc file to make this style of bindings appear.

kew state (for settings that can be changed in-app) is kept in ~/.config/kew/ke wstaterc.

If you change a setting in-app it will be tracked by kewstaterc and not kewrc.

kewrc is never changed by kew with the exception of when you run kew path.

If you delete your kewrc a new default one will be generated. You wont get newe r config options listed in your config file unless you do this.

Visulizations / Chroma

Starting with kew 4.0, you can add visualizations to kew by installing Chroma, an app by another developer.

You’ll need to install a specific commit, which is the latest one that works.

How to install Chroma:

git clone https://github.com/yuri-xyz/chroma.git

cd chroma

git checkout fb00b6e

cargo install --path . --features audio

Enable and cycle through the visualizations by pressing c in track view.

Disable by pressing b.

This works by kew being fed frames from Chroma and does not add bloat to kew.

Configuration

You can customize Chroma’s behavior in your kewrc file:

[chroma]
chromaPath=/path/to/your/custom.preset
chromaDevice=PipeWire Sound Server

Scrobbling

kew’s private and offline nature means we don’t support Scrobbling/last.fm dire ctly. Instead tools such as PanoScrobbler are recommended. See: https://github. com/kawaiiDango/pano-scrobbler.

Security

Reporting a Bug

If you find a security related issue, please contact us at kew-player@proton.me.

When a fix is published, you will receive credit under your real name or bug tracker handle in Codeberg. If you prefer to remain anonymous or pseudonymous, you should mention this in your e-mail.

Disclosure Policy

The maintainer will coordinate the fix and release process, involving the following steps:

You may be asked to provide further information in pursuit of a fix.