Build and test PyPI

MXCuBE-Web#

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

datacollection-view

samplegrid-view

Latest information about the MXCuBE project can be found on the MXCuBE project webpage.

Technologies in use#

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.

Information for developers#

Information for users#

  • 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