Orateur
Description
For decades, Diamond Light Source (DLS) and other facilities have been reliant on GUI packages that were first developed in the 90s and 2000s (e.g. edm, medm). CS-Studio was an attempt to move away from this, but wasn't very popular at DLS because of its sluggish performance and dependencies on Eclipse RCP and SWT.
At DLS for our Diamond II upgrade, we are looking to modernise our whole software suite to replace outdated tools. Gone are the days of monolithic code bases of our GDA, and using tools such as iocxmlbuilder. As part of this upgrade, we have been developing "epics-containers" to allow us to take advantage of cloud computing infrastructure and all the benefits it provides. We also saw an opportunity to leverage this infrastructure to host screens in the Kubernetes cluster and render them in a web app. This includes using our IOC configuration files to automate screen generation/validation.
We decided as a basis of the screens to use Phoebus, and Python to automate process the screen generation and validation. We have also created a phoebus-equivalent web app, known as Daedalus, to render such screens. This was built using React and typescript.
As a result of these efforts, we have successfully deployed a set of screens on our I19 and VISR beamlines, and can access them through our web app in a browser