Skip to content

mrs4ndman/presto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

presto

A simple music player TUI written in Rust, with Vim-like controls.

Features

  • Directory scan of common audio files (mp3, flac, wav, ogg)
  • Keyboard-driven TUI with Vim-like controls
  • / filter with word-by-word fuzzy matching
  • Ctrl+e exits filter input without starting playback
  • Right-sid panes for metadata and embedded lyrics (opened up with K / gl)
  • Opt-in lyrics loading via config, with timed-line emphasis for synced lyrics
  • MPRIS integration for playerctl / media keys
  • Per-directory state persistence (selection, filter, shuffle, loop, volume, last track)
  • Number-driven movement for hjkl skipping / navigation

Getting started

crates.io

  • The version uploaded to crates.io is the one on the develop branch:
cargo install presto

From source

  • Build: cargo build
  • Run: cargo run -- [music_dir]
    • If music_dir is omitted, it defaults to the current directory

Docs

Visit the web version or start with docs/README.md

TODO:

Finished TODOs will migrate onto the changelog.

Short-term

List of items to tackle
  • Enabling re-ordering / disabling some status sections

Long-term

List of items to tackle / consider
  • Listening stats (amount, usage, recent songs, etc.)
  • Theming
  • Cross-platform compatibility (config/state paths, media controls, audio backend support)
  • Server-client restructuring

↓ Current status ↓

Caution

VERY LOUD, will try to record it next time with less volume

V0-1-0_Presto.mp4

About

A simple TUI music player, with Vim-bindings

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages