The Latch SDK is a framework to build and deploy bioinformatics workflows, and dynamically generate associated interfaces, with a handful of python functions.
It is built directly on Flyte for all the benefits that the Kubernetes-native workflow orchestration framework provides - task-level type-safety and containerization, independent task scheduling, and heterogeneous & highly scalable computing infrastructure.
Slack Community • Docs • Installation • Quickstart • Latch • Latch Verified
Workflows developed with the SDK feature:
- Instant no-code interfaces for accessibility and publication
- First class static typing
- Containerization + versioning of every registered change
- Reliable + scalable managed cloud infrastructure
- Single line definition of arbitrary resource requirements (eg. CPU, GPU) for serverless execution
The Latch SDK is a framework to build workflows. A collection of existing and maintained workflows for common biological assays can be found at Latch Verified.
Getting your hands dirty with SDK is the best way to understand how it works. Run the following three commands in your terminal to register your first workflow to LatchBio.
Prerequisite: ensure that docker
is present and running on your machine.
(Install docker here if you don't already
have it installed.)
First, install latch through pip
.
$ python3 -m pip install latch
Then, create some boilerplate code for your new workflow.
$ latch init testworkflow
Finally register the boilerplate code to LatchBio.
$ latch register testworkflow
This might take 3-10 minutes depending on your network connection. (Subsequent registers will complete in seconds by reusing the image layers from this initial register.) The registration process will:
- Build a docker image containing your workflow code
- Serialize your code and register it with your LatchBio account
- Push your docker image to a managed container registry
When registration has completed, you should be able to navigate here and see your new workflow in your account.
If you are having issues with registration or have general questions, please file an issue on github.
The SDK is distributed on pip. Install in a fresh virtual environment for best behavior.
Virtualenvwrapper is recommended.
python3 -m pip install latch
Note that a local installation of docker is required to register workflows.
Latch Verified features list of well-curated workflows developed by the Latch team.
We'll maintain a growing list of well documented examples developed by our community members here. Please open a pull request to feature your own:
Gene Editing
Phylogenetics
- Seq-to-tree: Evolutionary history inference
- Codon optimization estimation
- Metamage: Taxonomy classification
Single-cell Analysis
- ArchR: Single-cell chromatin accessibility analysis
- emptydropsR: Ambient RNA detection
- scVelo: Single-cell RNA velocity analysis
Protein Engineering