~callum/aura-web-client

An AURA client that runs in a web browser
Update README
Allow adding albums and artists to queue
Display related resources in detail view

refs

main
browse  log 

clone

read-only
https://git.sr.ht/~callum/aura-web-client
read/write
git@git.sr.ht:~callum/aura-web-client

You can also use your local clone with git send-email.

#AURA Web Client

This is a client implementation of the AURA specification than runs in a web browser. The interface is still a bit rough around the edges but it is fully functional. Note that the AURA specification is not finished or stable.

A screenshot of the client playing "Beats, Rhymes and Life" by A Tribe Called Quest

#Obtaining

$ git clone https://git.sr.ht/~callum/aura-web-client
$ xdg-open aura-web-client/index.html

Alternatively, download the html, css and js files to the same directory and open index.html in a web browser.

If you don't want to do that then you can visit https://calcuode.com/aura-web-client/ (note this is served over HTTPS so your AURA server must be available over HTTPS).

Currently the only AURA server is the beets plugin I wrote, which can be found in it's unmerged form here.

#Using

Specify the location of your AURA server in the Request Builder. The URL should include the last slash after "aura", for example http://127.0.0.1:8337/aura/. The collection (tracks, albums or artists) you want to filter is chosen using a radio button. You may filter the collection by giving key-value pairs in the "Filters" textbox in the form key=value, for example artist=Fugazi. Filtering is by exact match only (including whitespace). How to deal with compound filters is not yet specified in AURA (see here for discussion), but this client adds a filter parameter to the request for each key-value pair on it's own line. For example:

artist=Fugazi
year=2001

would form a request like /aura/albums?filter[artist]=Fugazi&filter[year]=2001.

You may request the results to be sorted by giving a JSON:API sort string in the "Sort string" textbox. This is a comma-separated list of fields in order of priority, with a preceding minus sign (-) indicating that the following field should be in descending order. For example -year,title will order the results first by descending year (newest first), then by alphabetically ascending title.

Results of requests are displayed, unsurprisingly, in the "Results" panel. Clicking the blue underlined title of a result will display more information about it in the "Detail" panel. Every item (track, album or artist) has an associated checkbox which can be used to select it and the order you select items in is preserved. Selected items can be acted upon by using the buttons at the bottom. If you try to add artists or albums to the queue then the client will retrieve their related tracks from the server and add them instead. Playing selected items works by prepending them to the queue and then skipping to the next track. If you can see the same item in different places (e.g. a track in the results list and the queue), they are treated separately; selecting and acting on one does not affect the other. Only items in the queue can be removed from the queue (obviously) and the selection is NOT cleared once it has been acted upon - use the "Clear Selection" button.