Hi,
I know there are a few web developers here, so i wondered if I could pick some brains 
I want to develop a ‘mobile app’ for Orac, which will allow me to release Orac for the rPI and Bela, as it’ll allow users to configure and control the hardware remotely, even though its ‘headless’. (once configured, they can chose to run without the app)
I could quickly write a native app, C++/juce/networking all in my skill set, and the orac code is cross-platform, and supports a distributed model - so no issues, and quite quick to do.
BUT i don’t have the a apple developer account, nor current ipad, and id also have to do the same for android (and get the hardware) - all this sounds painful, and potential expensive. (considering this is all open source and free)
so, I thought id do a web-app, but last time i did browser stuff was 20 years ago (when you wrote your own servers etc) , and now it appears every man and his dog has written a framework, so I’m a bit bewildered at the array of options!
so am looking for some guidance/suggestions/thoughts…
to narrow things down, this is a simple app, basically i just need bi-directional async comm, not massive amounts of data, no database, no transactions, probably only single client - nothing complex.
however, it needs to be as light as possible, ideally, id embed it in my current server running, as its sometimes on a single core, so the few processes the better…
also that server already has the data model, so potentially can do the rendering (the code already renders 2 ui’s so adding new ones is ‘easy’), so that reduced interprocess comms.
for a web app, i cant re-use the current distribution, which is osc over udp, but i could quite easily add a new one.
my current thoughts/idea are (after a few hours of research, so be kind
)
my server could implements websockets, so it could serve up the client html/js but also have a custom protocol to send osc over to the client. (or json, or whatever)
the client side would be pretty simple, mainly ‘filling in a panel’ who contents is sent from the server (via the ws) , and sending data back from controls (js knobs/buttons etc) - a bit like how you might do it if you used something like Lemur.
part of the reasoning here, is my JS/html/css is pretty rusty/basic, keep client side minimal, and essentially do most of the ‘rendering’ on the server (where I have the skills)… and don’t want to spend months learning new skills before i can finish this.
i think approach is also pretty efficient, as it means the client does not need to see every parameter change/keep the data model, rather it only gets updates when the UI actually needs to update.
(and as i said, the rendering code is pretty much already there on the server, and it has the full data model already)
Im also hoping if this client side is resizable etc it will also work on different devices from phones-> desktops… (im hope some framework will help this?)
I recognise this will not lead to the most flexible/fancy UI, that’s ok, this is a first stab, a way to get the ball-rolling, if its popular, then it can be review again… and perhaps native apps start looking more viable.
BUT… as i said, these are my ideas only a few hours of research, so perhaps,
its a completely wacked idea? I’m re-inventing a (square) wheel?
thoughts?
also what do you recommend on the client side, vue/reactjs/something else?
( i installed webstorm by jetbrains and that offered about 20 different options
)
thanks for any pointers
Mark
mods: i think this is the right category, but feel free to move to development, if you think that’s more appropriate!?