-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Review of relevant existing art #1
Comments
A prototype for data collection: https://github.com/bluesky/bluesky-webclient. |
As discussed in the meeting te other day, we have prototypes for a composable UI element library https://diamondlightsource.github.io/web-ui-components/ and a plotting subsystem similar to h5web: https://github.com/DiamondLightSource/davidia/tree/main/davidia |
https://github.com/React-Automation-Studio/React-Automation-Studio was presented at ICALEPCS ("FR2BCO01: React Automation Studio: Modern Scientific Control With the Web", https://icalepcs2023.org/final-programme/). |
Daiquiri UIDaiquiri UI is the web based javascript User Interface for Daiquiri, the beamline control and data acquisition framework. It is built in React with Redux and is modular in design, allowing it to be adapted to many different beamline setups and requirements.
|
As we gather a critical mass of references here, we should think about creating a document in the repo that lists these references, and also provide some commentary that could help inform our efforts. |
Realtime Web Apps and Dashboards for Python and R
GitHub: https://github.com/h2oai/wave |
Hi everyone, just wanted to mention also the existance of imgui; fast and quick to assembly UIs with C++. They have Python bindings and there is an example of a web GUI built with webassembly. |
Also worth mentioning Diamond's work on a prototype react technical UI. Rough idea is phoebus in a browser. https://github.com/dls-controls/cs-web-proto |
two more links around Daiquiri: |
This may not be so relevant as it's a Qt app.
|
https://github.com/nghia-vo/broh5: (Bro)wser-based GUI (H)DF(5) Viewer in Python Based on https://github.com/zauberzeug/nicegui/. |
FYI we extracted some of the daiquiri-ui hardware objects such as motors, shutters, and some other basic components into a standalone library |
https://github.com/ml-tooling/best-of-web-python#web-ui lists a bunch of various frontend frameworks. |
There is exciting work going on at ANSTO in Australia. So far I only have these screenshots. Still need to get in touch to find out more. It looks like it interacts with Bluesky QS. |
Hi all. At SIRIUS we're currently looking for a unified approach to the user interfaces and experiment control based on bluesky. Concerning user interfaces, it is still not clear if we'll go with a mix of Web (general experiment control interfaces) and desktop (expert and specialized, components GUIs) or fully embrace Web. Today we employ PyDM in both accelerator and beamline controls, on the other hand have had very good experience (from users' perspective) with MXCuBE 3 (Web) in our MX beamline. This makes Daiquiri a natural candidate for standardization if we adopt Web applications. Unless there's a clear technical disadvantage in Daiquiri (or in its adaptability to the bluesky's environment), our preferred approach would be to stick with it and join efforts with the community to extend it to the use cases that we have, always willing to merge back our extensions to the official code base. We believe in the motto “If you want to go fast, go alone, if you want to go far, go together” :) In any case, we'll try to go where there's more momentum and comprehensiveness, that is, where the bulk of the community is going. We'll be looking for a technical solution that is sound and modular/decoupled enough to evolve and sustain itself in the long run. |
@tacaswell pointed to https://github.com/pydantic/FastUI. |
Let's start by compiling and reviewing other web UI projects in use or under development for experiment controls or data acquisition/exploration/analysis/ visualization, which we might be a able to incorporate, reuse or learn from.
The text was updated successfully, but these errors were encountered: