Ampache web interface

Ampache Web Interface

Ampache web interface to make browsing, and playing your music a simple task

NOTE: This is still a work-in-progress!!

This is meant to be installed as a command-line utility

npm install -g webamp

Create the necessary config file by running

~$ webamp --init

This will create a json file at ~/.webamp/config.json that will be used to configure the local webserver settings, as well as store the ampache credentials.

~$ webamp
Server running at http://localhost:8076/
Successfully Authenticated!
Populating cache
Artists cache loaded
Albums cache loaded
Songs cache loaded
[Sat Aug 11 2012 00:15:52 GMT-0700 (PDT)] [GET] request received from for /api/artists/7/new

After running webamp --init you can view the configuration file at ~/.webamp/config.json

  "ampache": {
    "debug": false,
    "ping": 600000,
    "user": "user",
    "pass": "pass",
    "url": "http://example.com:1234/ampache/server/xml.server.php"
  "web": {
    "host": "localhost",
    "port": "8076"

Most of the options are self explanatory

  • ampache.debug: (Optional) Enable debug messages for Ampache module
  • ampache.ping: (Optional) The time in milliseconds to between sending ping requests to Ampache (default: 10 minutes)

The design goal is that a request to / will return a nice looking web page, with all your music in a nice, easy to navigate format. All interactions on that page will use Ajax to hit the server at /api/... to pull JSON with relevant information.

Return an array of all of the artists/albums/songs in the cache (which is populated when the program starts)

Return an object for the relevant song/album/artist by id in the cache

Same as above, but force the info to come from Ampache and not the cache

MIT License