I started talking about something related to all that in this thread over here
There are quite some things that are just missing from most web UI frameworks, that we need in audio software. As @TobbenTM mentioned, knobs are a great example… just never needed on the web, so they’re basically non-existent when it comes to certain, needed functionalities.
I’m super excited about the possibilities, but at the same time we’ve spent a lot of time and money over the years building some complex UI components that render very performant in JUCE, and I cannot see us recreating these with the tools available in web frameworks.
So it started investigating, if I could just render certain elements through juce and display them in the web view, et voila:

It’s of course not perfect yet, a bit janky (the gif actually makes it worse than it is), but this is rendered in JUCE just using juce::Image and juce::Graphics to call into our paint routines, and then displayed in a Vue app, without affecting performance of the Vue app.
To accomplish this I implemented a Websocket that just streams raw pixel data on a dedicated thread, after rendering on another dedicated thread, all managed lock-free (Cannot recommend…) and then displaying it on a webgl2 canvas (can also not really recommend if you don’t know GL).
As I stated on the other thread, I should toy around with compression, because…

But at this stage I gotta leave it here until I know that I can make the jump to JUCE 8.
I think ultimately there is a way to utilize the best of both worlds with a bit of tinkering, and one can potentially fill out blind spots that web frameworks still have when it comes to audio software UI. I know people like @TobbenTM are working hard to get some native web elements going, that perform well for our special audio software requirements, so hopefully Web UIs become actually feasible very soon.