We have built a dashboard website to display data collected from PLCs and other field devices. Each user of the site will see different widgets sourcing different data from different devices.
We don't want to have to update the website every time a new user or new device is added. I built a system on AWS using SQS and Java Servlets that will dynamically serve widgets HTML elements to the webpage via Server Sent Events.
It is old tech, rudimentary, probably horrifically inefficient, and currently buggy but does get data through. It only gets one widget to render at the moment, so it needs work.
I am at a crossroads now as to continue working on my system and get it working smoothly or to adopt some dashboarding framework. I've read through introductions to a handful of frameworks, both dashboards and general frontends, but none of them seem to do anything mechanically that I am not already doing and only make things pretty. Also, none of them explicitly spell out how they would solve my different users, different widgets, different devices, different data problem.
The problem is I don't want to hard code instructions on how to render the data received into widgets. I want a separate library of empty widgets the client draws from and applies the received data to. Based on configuration linked to the current user.
Does anyone know of anything that does what I am looking for? Specifically making the backend working easier, dynamically creating widgets and populating them with data from external sources. I can make it pretty later.