Skip to content
myMPD is a standalone and mobile friendly web mpdclient
Branch: master
Clone or download
Pull request Compare This branch is 715 commits ahead, 3 commits behind SuperBFG7:master.
Latest commit 52773d0 Feb 23, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update issue templates May 25, 2018
cmake initial mongoose checkin Mar 8, 2014
contrib
debian Fix: Update version to 5.1.0 Feb 14, 2019
dist
htdocs Feat: bookmarks for directories #86 Feb 22, 2019
src Feat: bookmarks for directories #86 Feb 22, 2019
CMakeLists.txt
Dockerfile
LICENSE
PKGBUILD Fix: Update version to 5.1.0 Feb 14, 2019
README.md
mkclean.sh Fix: simplified packaging Sep 20, 2018
mkdebian.sh Fix: update debian version Nov 15, 2018
mkdebug.sh Fix: don't use if/then blocks Jan 21, 2019
mkrelease.sh

README.md

myMPD

myMPD is a lightweight MPD web client that runs without a dedicated webserver or interpreter. It's tuned for minimal resource usage and requires only very little dependencies.

myMPD is a fork of ympd (https://github.com/notandy/ympd). This fork provides a reworked ui based on Bootstrap 4, a modernized backend and many new features while having the same small footprint as ympd.

Design principles:

  • Keep it small and simple
  • Uses only mpd as source of truth
  • Mobile first UI
  • Keep security in mind

Featurelist:

  • Control mpd functions (play, pause, etc.)
  • Set mpd settings (repeat, random, etc.)
  • Browse mpd database by tags
  • Browse filesystem and playlists
  • Bookmarks for directories
  • Queue management
  • Playlist management
  • Advanced search (requires mpd >= 0.21.x and libmpdclient >= 2.17)
  • Jukebox mode (add's random songs / albums from database or playlists to queue)
  • AutoPlay - add song to (empty) queue and mpd starts playing
  • Smart playlists and saved searches
  • Play statistics and song voting (requires mpd stickers)
  • Local coverart support (Albums and Streams)
  • HTTP stream support
  • Local playback of mpd http stream (html5 audio api)
  • Progressiv Web App enabled
  • Embedded Webserver (mongoose)
  • Docker support (experimental)

myMPD is work in progress. Bugreportes and feature requests are very welcome.

Screenshots

image

UI Components

Backend

Dependencies

Build Dependencies

  • cmake 2.6
  • libasan3: for debug builds only
  • Java: optional for minifying .css and .js files

Unix Build Instructions

  1. Install dependencies: cmake, libmpdclient (dev), OpenSSL (dev) and Java are available from all major distributions.
  2. Build and install: cd /path/to/src; ./mkrelease.sh (toplevel directory of myMPD tarball).
  3. Link your mpd music directory to /usr/share/mympd/htdocs/library and put folder.jpg files in your album directories (mkrelease.sh tries to do this for you).
  4. Configure your mpd with http stream output to use the local player.

Run

Usage: ./mympd [/etc/mympd/mympd.conf]

The ./mkrelease.sh script tries to install a systemd service file. If this failes you can copy the mympd.service file from /usr/share/mympd/ to appropriate distribution specific location.

SSL

  1. Create ca and certificate /usr/share/mympd/crcert.sh (mkrelease.sh does this for you).
  2. Set ssl=true in /etc/mympd/mympd.conf (use default certificate under /etc/mympd/ssl/).
  3. Import /etc/mympd/ssl/ca/ca.pem in your browser to trust the certificate.
  4. myMPD redirects http requests to https, ensure that myMPD hostname is resolvable.

Copyright

myMPD: 2018-2019 mail@jcgames.de

ympd: 2013-2014 andy@ndyk.de

You can’t perform that action at this time.