webview-mpd-player

Version, currently main branch1 version
  • main branchlatestMar 24, 2026

github.com/mamantoha/webview-mpd-player

A lightweight MPD (Music Player Daemon) client built with Crystal and Webview

1 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  webview-mpd-player:
    github: mamantoha/webview-mpd-player
    branch: main

main is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
1.16.2
License
MIT
Author
Anton Maminov
Target
  • garnetune from src/main.cr

Dependencies

Runtime Dependencies

README

A lightweight MPD (Music Player Daemon) client built with Crystal and Webview. Features a web-based interface for controlling MPD playback, managing playlists, and displaying album artwork. Includes a music library browser with artist/album organization.

This application serves as a demonstration of building real-time applications using Crystal and Webview. It showcases how to create responsive desktop applications that can handle live updates and user interactions while maintaining a lightweight footprint. The integration with MPD provides a practical example of managing real-time events, state synchronization, and UI updates in a Crystal-based desktop application.

Name Origin

The name "Garnetune" is a playful combination of "Garnet" and "tune". Garnet is a type of crystal, which references the Crystal programming language used to build this application. Combined with "tune" for its music-playing capabilities, the name reflects both the technical foundation and musical purpose of the application.

Development Notes

The user interface for the player was developed with assistance from ChatGPT and Cursor AI Code Editor.

Installation

  1. Clone the repository:

    git clone git@github.com:mamantoha/webview-mpd-player.git
    cd webview-mpd-player
  2. Install dependencies:

    • Crystal (>= 1.15.0)
    • MPD (Music Player Daemon)
    • pkg-config
    • WebKit2GTK development files (webkit2gtk)
  3. Build the application:

    shards install
    shards build
    ./bin/garnetune

Screenshots

Player Playlist Library

Contributing

  1. Fork it (https://github.com/mamantoha/webview-mpd-player/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors