MXCuBE-Web is the latest generation of the data acquisition software MXCuBE (Macromolecular Xtallography Customized Beamline Environment). The project started in 2005 at ESRF, and has since then been adopted by other institutes in Europe. In 2010, a collaboration agreement has been signed for the development of MXCuBE with the following partners:
MXCuBE-Web is developed as a web application and runs in any recent browser. The application is built using standard web technologies and does not require any third-party plugins to be installed in order to function. Being a web application, it is naturally divided into server and client parts. The communication between the client and server are made using HTTP/HTTPS and web-sockets. It is strongly recommended to use HTTPS, SSL/TLS encrypted HTTP. The traffic passes through the conventional HTTP/HTTPS ports, minimizing the need for special firewall or proxy settings to get the application to work.
The underlying beamline control layer
is implemented using the library mxcubecore
previously known as HardwareRepository
.
The mxcubecore
library is compatible with
both the MXCuBE-Web and the MXCuBE-Qt applications.
Data collection | Sample grid |
---|---|
Latest information about the MXCuBE project can be found on the MXCuBE project webpage.
The backend is built on the Python Flask web framework, a library called SocketIO is further used to provide a bidirectional communication channel between backend and client. The backend exposes a REST API to the client.
The UI is implemented in HTML, CSS and JavaScript, mainly with the React, Redux, Boostrap, and FabricJS libraries.
- User Manual MXCuBE Web
- Feature overview
- If you cite MXCuBE, please use the references:
Oscarsson, M. et al. 2019. “MXCuBE2: The Dawn of MXCuBE Collaboration.” Journal of Synchrotron Radiation 26 (Pt 2): 393–405.
Gabadinho, J. et al. (2010). MxCuBE: a synchrotron beamline control environment customized for macromolecular crystallography experiments. J. Synchrotron Rad. 17, 700-707