Roon Extension: Roon Web Controller v1.0.0 (on GitHub)

I have been tinkering with the node-roon-api for a bit and I think I am happy with the results. So I am ready to share it.

It is a web app that shows “Now Playing” information, including playback controls, the ability to switch zones, and even has a few themes. The volume control is not yet implemented - mainly because both of my zones have a fixed volume. But I will figure that out soon enough and update this app.

It is written to be touch friendly and the page resizes to your browser window. It looks and works great on a Raspberry Pi touchscreen as well as in a browser window. For long song/artist/album names, the text scrolls (as seen below in the “Cover Art - Light Theme” screenshot).

This is posted to GitHub so that you can try it out yourself. Installation and usage instructions are in the README.md file. Please let me know what you think.

But without further adieu, here are some screenshots:
Light Theme

Dark Theme

Cover Art - Dark Theme

Cover Art - Light Theme

11 Likes

Like the sound of this but my brain almost exploded getting the Alarm Clock going so I might need therapy to make this one work now.

Wish this would work on the Apple Watch … now that would be sweet. Especially if it paused or muted all endpoints when the phone rings

That is really sweet! Nice Work!

@Mike_Plugge Nice work!
Got it going in no time!

@Tech_Whisky_Lab thanks!

My goal was to make it as simple as possible to use!

1 Like

@wizardofoz the Alarm Clock app has a lot more configuration options and as a result is pretty powerful.

This extension is pretty simple to install. The only configuration is done via the web client and is just selecting a theme and a zone.

Hopefully you can give it a go!

@Mike_Plugge Can you implement the search function? like here:

Thoughts?

I saw that. Looks interesting.

At the moment this app just shows Now Playing info. There isn’t any way to add music using it. There are a lot of other things that need to be done first - notably a browser section.

But yes, long term, I would like to do it. My primary desktop is a Linux system that does not have an official control app. The long term goal is a complete remote for Roon that I can use on my main desktop or a Raspberry Pi touch screen.

3 Likes

We share the same sentiment. Thank you for this… Looking forward to your future development.

@Mike_Plugge just reporting… From my Debian Jessie x86_64 with the webui looks perfect (Using chrome).
From my Mac OS Sierra it looks like this…

The zones repeat them self…

That is weird…

I just checked it out with Safari on my Sierra system and it is not doing that. It is weird because the code that populates that section intentionally blanks out the previous HTML to prevent that from happening…

Can you try stopping the extension, restarting your Roon server, then starting the extension to see if that resolves it?

Restarting the extension via systemctl did the trick…

I saw that once as I was writing the parser for the node-roon-api zone feed. Restarting the extension fixed it for me, too…

Thought it was a fluke, though.

Glad it worked for you

I’m just trying to say that for extensions to used it’s not a doddle to get it running for the average joe. This is where it needs to get to for the API to bo of use to the general basic users…the geeks among us can all cope with it I think, but it’s not something I could expect many of my friends to cope with.

@wizardofoz - that is a fair statement. You are absolutely right. And I think that the Roon Labs folks acknowledge this fact. In the “About the Roon API Category” thread, they mention that it lacks packaging. So as the API solidifies, that should get addressed as well.

I have been tracking another thread which discusses extension distribution and when things solidify or there is an official documented way to work with the distribution of extensions, I will work to make this extension compliant.

1 Like

I am just loving this extension!

Thanks @Tech_Whisky_Lab ! I definitely appreciate that!

If you are curious, you can track my development more closely with the “dev” branch. This evening, I have moved the theme setting into a new menu (top right) and have a place holder page for the upcoming work on the library. I am looking into the volume controls, repeat and shuffle controls, and enabling/disabling auto-radio mode. I will start diving into the browser API soon.

I have a new theme in mind too - but I will keep that under wraps for now! :stuck_out_tongue:

You can get the “dev” branch by running:
git clone -b dev https://github.com/pluggemi/roon-web-controller.git roon-web-controller-dev

This will create a new directory for the dev version. Note that since the main version and the dev version listen on the same port, you will have to stop one to run the other.

1 Like

@Mike_Plugge YES! Ill git clone it tomorrow AM. Late right now, I have to be at work at 5AM… UGH
LOL

Thanks!

I too will get this plugged into my setup…the best thing about this is that it might give a new lease on life for some old iPad’s that can run roon or control it but can perhaps at least manage a web based interface and thats a good thing. :smiley:

Happy Days

You are in luck there, then. The code to make it a native web app on an IOS device is already there!

Open the site in IOS Safari, click the share icon, then click “Add to Home Screen”. This app has all the header information to have a nice icon and to allow it to run full screen.