Skip to main content

No project description provided

Project description

datalab

This repository contains the code for the datalab data management system, targeted (broadly) at materials chemistry labs but with customisability and extensability in mind.

The main aim of datalab is to provide a platform for capturing the significant amounts of long-tail experimental data and metadata produced in a typical lab, and enable storage, filtering and future data re-use by humans and machines. The platform provides researchers with a way to record sample- and cell-specific metadata, attach and sync raw data from instruments, and perform analysis and visualisation of many characterisation techniques in the browser (XRD, NMR, electrochemical cycling, TEM, TGA, Mass Spec, Raman). Importantly, datalab stores a network of interconnected research objects in the lab, such that individual pieces of data are stored with the context needed to make them scientifically useful.

The system was originally developed in and is currently deployed for the Grey Group in the Department of Chemistry at the University of Cambridge, with several instances deployed for members in the datalab federation.

[!NOTE] You may be looking for the identically named project DataLab for signal processing, which also has plugins, clients and other shared concepts!

Features

datalab consists of two main components:

  • a Flask-based Python web server (pydatalab) that communicates with a MongoDB database backend and can perform simple analysis and ETL of particular data types,
  • a Vue 3 web application for a GUI that can be used to record information on samples alongside raw data files and analysis documents.

Server

  • A REST API for accessing data and analysis related to chemical samples, inventory and their connections, with ergonomic access provided via the datalab Python API.
  • OAuth2-based user authentication via GitHub or ORCID and simple user role management.
  • Real-time data streaming and syncing with remote data sources (e.g., instrumentation, archives and file stores).

UI

  • A simple, intuitive UI for recording sample-based metadata and relationships with other samples (batches, derivatives, etc.), alongside synthesis parameters and raw data.
  • Basic analysis and plotting of live and archived data attached to a sample, e.g., characterisation via XRD or NMR, electrochemical cycling data and images (see "Data blocks" section for a complete list).
  • Interactive network visualisation of the connections between samples and inventory.

Development status

datalab remains under active development, and the API, data models and UI may change significantly between versions without prior notice. Where possible, breaking changes will be listed in the release notes for every pre-v1 release.

Installation

Installation, usage and deployment instructions can be found in INSTALL.md and in the online documentation.

License

This software is released under the conditions of the MIT license. Please see LICENSE for the full text of the license.

Contributions

This software was conceived and developed by:

with contributions and testing performed by other members of the Grey Group.

A full list of code contributions can be found on GitHub.

Contact

We are available for consultations on setting up and managing datalab deployments, as well as collaborating on or sponsoring additions of new features and techniques. Please contact Josh or Matthew on their academic emails, or join the public datalab Slack workspace.

Funding

This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement 957189 (DOI: 10.3030/957189), the Battery Interface Genome - Materials Acceleration Platform (BIG-MAP), as an external stakeholder project.

Project details


Download files

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

Source Distribution

datalab_server-0.6.0rc3.tar.gz (4.5 MB view details)

Uploaded Source

Built Distribution

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

datalab_server-0.6.0rc3-py3-none-any.whl (128.2 kB view details)

Uploaded Python 3

File details

Details for the file datalab_server-0.6.0rc3.tar.gz.

File metadata

  • Download URL: datalab_server-0.6.0rc3.tar.gz
  • Upload date:
  • Size: 4.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for datalab_server-0.6.0rc3.tar.gz
Algorithm Hash digest
SHA256 4462d873a9f9d6d17a96e9ee52d8811b22fb089dc1cf482cd04a38996c95a2e1
MD5 2f2a21564937e957be4d8e30db489ee9
BLAKE2b-256 edfff2dea1c11391b16109beecce64f0891cfec4c57a9137ce784b49150cf790

See more details on using hashes here.

Provenance

The following attestation bundles were made for datalab_server-0.6.0rc3.tar.gz:

Publisher: release.yml on datalab-org/datalab

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

File details

Details for the file datalab_server-0.6.0rc3-py3-none-any.whl.

File metadata

File hashes

Hashes for datalab_server-0.6.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 4cf78e30a1522f9023108bf206cc88f29de00708d12d24e2e31268eda45f7dfb
MD5 60b1fe7f19a030d221c1d6600b3da251
BLAKE2b-256 f86eb96ac9668e2c6b5b502cf881313a824427ad9e5c0f1963857aba2a75c6dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for datalab_server-0.6.0rc3-py3-none-any.whl:

Publisher: release.yml on datalab-org/datalab

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