liulab-mbio¶
Molecular biology design and analysis tools for DNA sequences, enzymes, primers and cloning.
Install it¶
The repo uses pixi and nothing else. No pip, no conda, no uv. Clone the repo, then:
pixi install
That reads pyproject.toml and builds the environment from the lock file, so you get the
same versions the tests ran on.
Use it¶
Plan a Golden Gate cloning job from a vector file and an insert file:
pixi run liulab_mbio goldengate plan vector.dna insert.dna --out plan/
Three files land in plan/. product.dna is the assembled plasmid, with its features and
primers marked. primers.tsv is the oligos to order. protocol.html is one page you can
follow at the bench.
The same thing from Python:
from liulab_mbio.goldengate import plan_assembly
plan = plan_assembly("vector.dna", "insert.dna")
plan.write("plan/")
Sequence files are read into one shared model, whatever their format:
from liulab_mbio.io import read_record
record = read_record("vector.dna")
Put GFP into pUC19 walks through one job from end to end. The
API reference has the full list, built from the docstrings in src/.
Check your work¶
One command runs the linters, the type checker and the tests:
pixi run check
It runs every step, then prints all the failures at once. Read to the bottom before you fix anything.
The docs site is built by a separate command, because it needs a heavier environment:
pixi run docs-build
Where things live¶
| Path | What it holds |
|---|---|
src/liulab_mbio/ |
the package |
tests/ |
the tests |
docs/ |
this site |
scripts/check.sh |
the gate every commit has to pass |
CONTEXT.md |
the glossary: the words this repo uses |
Some notes are written for coding agents, not for people. Conventions go under
docs/agents/, decision records under docs/adr/, and research notes under
docs/research/. Nothing in those three directories shows up in the menu or the search
box, and a page written there is still reachable by its own URL.