Skip to main content

Client-Server architecture hauling Cryo-EM data

Project description

Murfey

A transporter for data from Diamond eBIC microscope and detector machines onto the Diamond network.

Who is Murfey?

Murfey, the package, is named after Eliza Murfey, the inventor:

Focusing on the mechanics of the railroad, inventor Eliza Murfey created devices designed to improve the bearings on rail wheels. With sixteen patents for her lubrication system, it was Murfey who designed the packings that would lubricate the axles with oil, aiding in the reduction of derailments caused by seized axles and bearings.

How do I set up a development environment?

We suggest you start with your favourite virtual environment (mamba/conda/python virtualenv/...), then install using the following command.

$ git clone git@github.com:DiamondLightSource/python-murfey.git
$ cd python-murfey
$ pip install -e .[server,developer]

The packages included under the [developer] installation key contain some helpful tools to aid you with developing Murfey further:

  • bump-my-version - Simplifies version control.
  • ipykernel - Enables interactive code development via Jupyter Notebooks.
  • pre-commit - Allows for the installation and running of hooks to help with linting, formatting, and type checking your code.
  • pytest - Used in conjunction with test functions to evaluate the reliability of your code.

Instructions for setting up the database for Murfey to register files to can be found here.

Finally, you may want to set up an ISPyB mock database server and a Zocalo development environment. The instructions for this are out of scope here.

You can then start the Murfey server with

$ murfey.server

and connect the client with

$ murfey.instrument_server --port 8000

You can also install a client on a remote machine. This machine only needs to have a minimum Python installation and curl. Open the murfey server website in a browser on the client, and navigate to the bootstrap page. Then copy the displayed commands into a command line terminal.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

murfey-0.23.1.tar.gz (300.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

murfey-0.23.1-py3-none-any.whl (362.2 kB view details)

Uploaded Python 3

File details

Details for the file murfey-0.23.1.tar.gz.

File metadata

  • Download URL: murfey-0.23.1.tar.gz
  • Upload date:
  • Size: 300.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for murfey-0.23.1.tar.gz
Algorithm Hash digest
SHA256 ae770d1c7eb008bae479a23fdf974de467e9282b9ab3eb5c1c0a746495961426
MD5 78074d2d9977fdd3c9f61d67c66cfc6a
BLAKE2b-256 e2e0c2656cb4e4755ebc4532d26cbff315092cf3edecf373a73a2fa7564fecf1

See more details on using hashes here.

Provenance

The following attestation bundles were made for murfey-0.23.1.tar.gz:

Publisher: publish-version.yml on DiamondLightSource/python-murfey

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file murfey-0.23.1-py3-none-any.whl.

File metadata

  • Download URL: murfey-0.23.1-py3-none-any.whl
  • Upload date:
  • Size: 362.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for murfey-0.23.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6f16aa73b59c7df1cb830e9f1e4b887c86f8c0f42f07e24497e0d0245e34dd4b
MD5 2a5154712b12cf9f2f1a7e07238f4953
BLAKE2b-256 fc082bea41760d5ddec2f8cc07a34c4c8dbe25104f81a1ba4d5b8a5ef8e4d603

See more details on using hashes here.

Provenance

The following attestation bundles were made for murfey-0.23.1-py3-none-any.whl:

Publisher: publish-version.yml on DiamondLightSource/python-murfey

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page