How it all began
This is something that i have been working on for last couple of weeks. rmptui is a tui music player whichworks with MPD (Music Player Daemon).
I had decided to make a music player in rust in the May of 2023, but i never got around to it. It was two months ago when i actually started working on it, because i wanted to learn rust.
Above pictures shows the directory browser tab of rmptui. It has total three tabs:
- Queue - Shows current playing queue
- Directory browser - Lets you explore your music library
- Playlists - Shows your playlists
Get more info about keymaps from Github Readme
Crates Used
So rmptui uses rust-mpd crate to interact with Music Player Daemon. This crate is no longer maintained it seems, a lot of the commands are ambiguous, and it was relatively annoying to work with it. The better approach would be to just use TCP sockets, but anyways i found my ways to work with this crate anyways.
It uses ratatui for the TUI (Terminal User Interface) which is a pretty lightweight and intuitive library to cook TUIs.
State of Rmptui right now (2024-06-02)
It is still in its early development days, where a lot of bugs are expected, so i kindly request everyone to report bugs on Github Issues, so i can fix them. Currently it is in its version 0.1.4.
Future Plans
Right now rmptui is not asynchronous and is single threaded, which is really bad for a music player that interacts with a server and handles keybinds and renders TUI at the same time. I also plan to add support for lyrics fetching in future. Also the codebase is a giant clusterf*ck, so i hope to organize that as well.
Last but not the least, release a stable v1.0.0 and public it on crates.io