Skip to content

Commit

Permalink
updated website
Browse files Browse the repository at this point in the history
  • Loading branch information
haeussma committed Sep 17, 2024
1 parent 55c486e commit 549da06
Show file tree
Hide file tree
Showing 9 changed files with 165 additions and 41 deletions.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
74 changes: 54 additions & 20 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,57 @@
# EnzymeML Training Course

## ℹ️ About
The EnzymeML Training Course is a collaborative project between multiple biocatalysis groups. This project aims to jointly develop computational tools, data standards, and best practices for the analysis of enzyme-catalyzed reactions. Furthermore, the project provides training for Python-based data analysis of experimental data.

## 🚀 Motivation
The current processing and analysis of catalytic data mainly relies on spreadsheet-based tools. Thus, many manual processing steps are required, which are error-prone and time-consuming. The goal of this project is to develop generic Python tools that allow the processing and analysis of reaction data in Jupyter notebooks. Therefore, the MTPHandler and Chromatopy are developed, enabling the processing of raw data from spectrophotometry and chromatography. These tools act as data harmonization tools, allowing the conversion of raw data into the standardized EnzymeML format while enriching the measured data with metadata on e.g. reaction conditions or catalyst and substrate properties.

![EnzymeML Training Course](figs/data_scheme.png)


## 📚 Stages
The project is structured into three stages, dividing the task of implementing generic analysis workflows for biocatalytic data:

### 1. Making experimental data accessible
Development of generic Python tools, allowing reading in unprocessed data from various analytical sources such as spectrophotometry, chromatograph, or NMR. The tools facilitate the preprocessing of the data, concentration calculation, and the generation of EnzymeML files.

### 2. Data Analysis
Depending on the needs of the project members, existing Python tools will be used or extended to analyze the data. Experimental questions
Development of Python-based tools for the analysis of enzyme-catalyzed reactions.

### 3. In-person Workshop
During a three-day workshop, the project members will be trained in the use of the developed tools and their implementation in Jupyter notebooks to form custom analysis workflows.
The current processing and analysis of catalytic data mainly relies on spreadsheet-based tools. Thus, many manual processing steps are required, which are error-prone and time-consuming and not scalable. The goal of this project is to develop generic Python tools that allow the processing and analysis of catalyzed reaction data in Jupyter Notebooks. Jupyter Notebooks provide an interactive environment where code, data, and documentation coexist seamlessly, making it easy to experiment with data processing and analysis in real-time. This ensures that the entire workflow is transparent, reproducible, and easily shareable with others. Therefore, the Python tools `chromatopy`, `MTPHandler` and `NMRpy` are developed, enabling the processing of raw data from plate readers and chromatographic instruments. These tools act as data harmonization tools, allowing the conversion of raw data into the standardized EnzymeML format while enriching the measured data with metadata on e.g. reaction conditions or catalyst and substrate properties. Thereafter, the data is ready for further analysis, such as yield, conversion, selectivity determination, kinetic modeling, and visualization in a streamlined and reproducible manner.

The following diagram illustrates the workflow for each of the analytical instruments and the optional subsequent data analysis steps:

```mermaid
graph LR
LAB["<b>📙 Lab Journal</b><br><br>
<i>pH</i><br>
<i>Temperature</i><br>
<i>Reaction Time</i><br>
<i>Initial Conditions</i><br></i>"]
A[🌈 Chromatographic Instrument] -->|output| A1[📄 Files]
B[🔬 Plate Reader] -->|output| B1[📄 Files]
C[🧲 NMR] -->|output| C1[📄 Files]
LAB -->|fill out form| SUITE
A1 -->|read| D
B1 -->|read| E
C1 -->|read| F
subgraph in Jupyter Notebook:
subgraph EnzymeML Python Tools
D{chromatopy}
E{MTPHandler}
F{NMRpy}
end
D -->|transform| EMLD[EnzymeML Object]
E -->|transform| EMLD
F -->|transform| EMLD
EMLD -.-> DS1
EMLD <-.-> DS2
EMLD -.-> DS3
subgraph with Data Science Python Tools:
DS1[Determine e.g., yield, conversion, selectivity]
DS2[Kinetic Modeling]
DS3[Visualization]
end
end
EnzymeMLDocument["<b>📄 EnzymeML Document</b><br><br>
<i>SmallMolecules</i><br>
<i>Proteins</i><br>
<i>Measurements</i><br>
<i>Reactions</i>"]
SUITE["<b>🗂️ EnzymeML Suite</b><br><br>
<i>create</i><br>
<i>edit</i><br>
<i>simulate</i><br>
<i>visualize</i><br></i>"]
SUITE <--->|read / write| EnzymeMLDocument
EMLD <-->|read / write| EnzymeMLDocument
```
110 changes: 99 additions & 11 deletions docs/workshop_2024/hackathon.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
### Hackathon: Managing Your Own Data with EnzymeML Tools
# Hackathon: Managing Your Own Data with EnzymeML Tools

This session is designed to familiarize participants with the EnzymeML tools through an interactive workshop. It begins with an introduction to the EnzymeML Suite, a comprehensive grapgical application for creating and visualizing EnzymeML documents. The session will also highlight interoperability with various libraries, showcasing integrations with tools like MTPHandler, NMRPy, and Catalax to enhance versatility and functionality. Thereafter, brought datasets will be read in, with the EnzymeML tools [`chromatopy`](https://fairchemistry.github.io/chromatopy/) for chromatographic measurements, [`mtphandler`](https://fairchemistry.github.io/MTPHandler/), as well as [`nmrpy`](https://nmrpy.readthedocs.io/en/latest/?badge=latest)

__Requirements__:
## Requirements

To participate in the hands-on session, the following hardware and software are required:

Expand All @@ -11,15 +11,103 @@ To participate in the hands-on session, the following hardware and software are

Anaconda simplifies installing and managing Python, Jupyter, and essential tools. It bundles everything you need, including numerous libraries, making it perfect for beginners and advanced users.

__Bringing Your Own Data__:
### Python Libraries

We provide a selection of prepared datasets for use during the workshop. If you plan to utilize your own data, see the following list of supported devices and file formats:
For this session, the following Python libraries are required, each serving a specific purpose:

- Plate reader data
- BioTek, Magellan, Multiskan Spektrum, Multiskan Skyhigh, or Spectramax 190, Tecan Spark
- Chromatographic data
- refere to the supported formats and data preparation in the [documentation of `chromatopy`](https://fairchemistry.github.io/chromatopy/supported_formats/)
- NMR data
- FIDs of NMR measurements (e.g., Bruker, Varian)
- **PyEnzyme**
A Python package used to handle the EnzymeML data format.

You should also bring data from calibration measurements if applicable.
- **Chromatopy**
A versatile library used for processing chromatographic data.

- **NMRPy**
A library that facilitates the analysis of Nuclear Magnetic Resonance (NMR) data. It helps in spectral processing, visualization, and interpretation of (time-course) NMR experiments.

- **Catalax**
A computational library for simulating catalytic processes and enzyme-catalyzed reactions based on JAX. Catalax offers tools for inetgration, parameter estimation and neural ordinary differential equations.

- **Basico/COPASI**
Basico is a Python interface for COPASI, a widely-used software for simulating and analyzing biochemical networks. Basico provides Pythonic access to COPASI’s features, such as simulating models, parameter estimation, and sensitivity analysis.

__Installing the Dependencies__

To install all these libraries, execute the following command:

!!! info
Not all of the dependency installs will work before the workshop, as some of the packages are not yet published. Installation of the dependencies will also be done during the workshop.

```bash
pip install pyenzyme chromatopy nmrpy catalax basico
```

This command installs all the necessary packages in your Python environment, ensuring you have everything set up to begin working within this session.

### Bringing Your Own Data

If you plan to utilize your own data, please refer to the following list of supported devices and file formats. However, if you don't have your own data that meets these requirements, you can use prepared datasets provided during the workshop.

- __Plate reader data__
please refer to the supported formats in the [documentation of `MTPHandler`](https://fairchemistry.github.io/MTPHandler/#supported-plate-readers)
- __Chromatographic data__
please refer to the supported formats and data preparation in the [documentation of `chromatopy`](https://fairchemistry.github.io/chromatopy/supported_formats/)
- __NMR data__
FIDs of NMR measurements (e.g., Bruker, Varian)

You should also bring data from calibration measurements if applicable for your data analysis.

## Agenda

The hackathon session will start with an introduction in the EnzymeML Suite and how it can be used to capture an experiment with its graphical user interface. Thereafter, either onw datasets or prepared data sets can be processed with the EnzymeML Python tools in a Jupyter Notebook therefore the mentioned Anaconda installation is required. The following workflow illustrates the steps for each of the supported analytical instruments and the optional subsequent data analysis steps:


```mermaid
graph LR
LAB["<b>📙 Lab Journal</b><br><br>
<i>pH</i><br>
<i>Temperature</i><br>
<i>Reaction Time</i><br>
<i>Initial Conditions</i><br></i>"]
A[🌈 Chromatographic Instrument] -->|output| A1[📄 Files]
B[🔬 Plate Reader] -->|output| B1[📄 Files]
C[🧲 NMR] -->|output| C1[📄 Files]
LAB -->|fill out form| SUITE
A1 -->|read| D
B1 -->|read| E
C1 -->|read| F
subgraph in Jupyter Notebook:
subgraph EnzymeML Python Tools
D{chromatopy}
E{MTPHandler}
F{NMRpy}
end
D -->|transform| EMLD[EnzymeML Object]
E -->|transform| EMLD
F -->|transform| EMLD
EMLD -.-> DS1
EMLD <-.-> DS2
EMLD -.-> DS3
subgraph with Data Science Python Tools:
DS1[Determine e.g., yield, conversion, selectivity]
DS2[Kinetic Modeling]
DS3[Visualization]
end
end
EnzymeMLDocument["<b>📄 EnzymeML Document</b><br><br>
<i>SmallMolecules</i><br>
<i>Proteins</i><br>
<i>Measurements</i><br>
<i>Reactions</i>"]
SUITE["<b>🗂️ EnzymeML Suite</b><br><br>
<i>create</i><br>
<i>edit</i><br>
<i>simulate</i><br>
<i>visualize</i><br></i>"]
SUITE <--->|read / write| EnzymeMLDocument
EMLD <-->|read / write| EnzymeMLDocument
```
22 changes: 12 additions & 10 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,21 @@
site_name: EnzymeML Training Course

nav:
- Home: index.md
- Home:
- EnzymeML Training Course: index.md
- Hackathon: workshop_2024/hackathon.md
- EnzymeML Workshop 2024:
- General: workshop_2024/general.md
- Programme: workshop_2024/schedule.md
- Hackathon: workshop_2024/hackathon.md
- DIY:
- Getting started: getting_started.md
- Python basics and manipulation of data: load_and_manipulate.md
- Working with plate data: plate_data.md
- Project Status: status.md
- Installations:
- Docker: docker_installation.md
- JupyterLab: jupyterlab_installation.md

# - DIY:
# - Getting started: getting_started.md
# - Python basics and manipulation of data: load_and_manipulate.md
# - Working with plate data: plate_data.md
# - Project Status: status.md
# - Installations:
# - Docker: docker_installation.md
# - JupyterLab: jupyterlab_installation.md

theme:
name: material
Expand Down

0 comments on commit 549da06

Please sign in to comment.