Downloads · 30 days
0
Dinesh4311/Plant-DNA-Designer
Plant-DNA-Designer is a machine learning model from Dinesh4311. Use it for the machine learning task on the model card, and read the license before you ship it in a product. The card lists the license as mit.
Design plant expression cassettes de novo — automatically.
Downloads · 30 days
0
Access
Public
Updated Aug 9, 2026
Repo size
8.7 MB
Likes
0
Public
Click a slice to open those files.
.png6.6 MB · 52%
From the Hugging Face model README
Design plant expression cassettes de novo — automatically.
📄 Paper (bioRxiv) · 📦 Zenodo archive · 💻 GitHub · 🤗 Hugging Face
⏱️ 30-second version. Pick a crop and one or more traits. The tool maps each trait to its validated effector protein, generates a fresh, crop-optimized DNA coding sequence for it with a translation-aware optimizer, and returns a full report on expression, gene-editing targets, stability and safety — ready to synthesize. No AI, no cloud; runs on your machine.
Scientists who want a plant to do something new (survive drought, resist disease, improve yield) need a custom piece of DNA designed for it. Writing that DNA by hand is slow and error-prone: the plant might ignore it, silence it, or read it incorrectly.
Plant DNA Designer turns a crop + trait choice into a ready-to-test DNA cassette. It supports 46 validated traits across 18 crops — from submergence tolerance (SUB1A) and Golden-Rice provitamin-A (PSY) to nitrogen-use efficiency (GRF4), stem-rust resistance (Sr35), cotton fiber quality (GhMYB25) and sugarcane sucrose accumulation (SPS1). The key is its biological target layer: each trait is mapped to a validated plant mechanism and the effector protein known to drive it (e.g. drought tolerance → DRE/CRT dehydration signaling → the DREB2A transcription factor). The tool then generates a de-novo, crop-optimized coding sequence for that effector using a translation-aware evolutionary optimizer that balances codon adaptation, codon harmony, mRNA structure, translational pausing, expression quality, and sequence safety — built by optimization rather than retrieved from a database — and runs a full health check covering expression, gene-editing targets, stability, and safety. Everything runs on your own machine with simple, transparent math.
What "de novo" means here: the protein is a validated plant effector (with citations); the nucleotide sequence is generated fresh — synonymous, crop-codon-optimized, and expression-engineered — not copied from any gene in a database. You can also override the target with your own validated protein.
💡 No AI, no cloud, no cost. Every score is computed with published, open formulas — there are no paid AI/LLM calls and nothing leaves your computer. The biology is tuned specifically for plants, not humans or animals.
★ What makes it different: unlike ordinary codon optimizers, it designs the whole expression cassette — and is one of the few plant-focused design platforms that automatically designs IME-enhancing introns (Intron-Mediated Enhancement), a plant-exclusive trick that can lift expression 10–50× by auto-designing an enhancing intron for the 5′UTR. (See the flagship section below.)
Plant DNA Designer does not simply maximize the Codon Adaptation Index (CAI).
The optimization engine uses a multi-objective evolutionary framework that models several stages of gene expression simultaneously:
The result is a translation-aware design strategy that optimizes initiation, elongation, folding, and sequence quality together, rather than treating codon optimization as a single-metric problem.
Why this matters: most tools do one of — trait→mechanism→effector mapping, translation-aware sequence design, or plant-specific optimization. Plant DNA Designer combines all three in a single workflow.
Sophisticated ideas only count if they produce different, measurable outcomes —
and the comparison has to be external, not a set of in-house strawmen. The repo
ships a reproducible benchmark (cool/benchmark.py) in which every comparator
faithfully reproduces the published algorithm of a named, widely-used external
tool — JCat / OPTIMIZER / ATGme (one-amino-acid-one-codon CAI-max), IDT
(balanced codon usage), and TISIGNER (5′-initiation optimization) — run on the
same panel of 6 real plant effector proteins (DREB2A, SUB1A, PSY, GRF4,
Sr35, Ferritin) with the same plant metrics. Reproducing the algorithm is fairer
than scraping each tool's web output, which targets generic microbial/mammalian
hosts and varies by host and GC settings:
cd cool && python -m benchmark
| Strategy (← external tool reproduced) | CAI | Harmony | tAI | MTDR | Dynamics | 5′-openness | Body ΔG | Safety | GC dev |
|---|---|---|---|---|---|---|---|---|---|
| Random synonymous (naive floor) | 0.731 | 0.747 | 0.391 | 0.776 | 0.722 | −0.248 | 0.279 | 3.47 | 3.5 |
| JCat / OPTIMIZER / ATGme (CAI-max) | 1.000 | 0.422 | 0.514 | 0.834 | 0.649 | −0.347 | 0.358 | 2.33 | 21.8 |
| IDT (balanced usage) | 0.793 | 0.930 | 0.422 | 0.791 | 0.740 | −0.139 | 0.251 | 3.00 | 7.5 |
| TISIGNER (5′ initiation) | 0.955 | 0.495 | 0.495 | 0.829 | 0.699 | −0.153 | 0.358 | 2.92 | 18.9 |
| CAI+GC heuristic | 1.000 | 0.433 | 0.512 | 0.833 | 0.650 | −0.351 | 0.382 | 2.58 | 21.0 |
| Plant DNA Designer | 0.790 | 0.774 | 0.422 | 0.782 | 0.741 | −0.114 | 0.387 | 0.00 | 4.0 |
| Plant DNA Designer (folding mode) | 0.775 | 0.815 | 0.416 | 0.796 | 0.761 | −0.129 | 0.388 | 0.25 | 4.1 |
Higher is better for CAI, Harmony, tAI, MTDR, Dynamics, Body ΔG; closer-to-0 is better for 5′-openness; lower is better for Safety (liability penalty) and GC dev. tAI now uses the dos Reis wobble weights (so a codon read only through an inefficient wobble tRNA scores below its Watson–Crick synonym), MTDR is the tRNA supply/demand match. Note CAI-max scores highest on tAI/MTDR — in GC-rich rice the argmax codons are also the high-tGCN ones, which is exactly why tAI alone isn't sufficient and PDD trades a little of it for harmony, safety and GC fidelity. "Dynamics" is the ribosome-velocity-trajectory match; GC dev is deviation from a neutral 50% synthesis target.
What the numbers show — including where we don't win. Each external-tool algorithm excels on the one axis it optimizes and fails on the others. JCat/ OPTIMIZER/ATGme hit a perfect CAI (1.000) but the worst harmony (0.422) and — on the real GC-rich rice codon table — a catastrophic 21.8 pp GC deviation (argmax drives GC to ~72%). IDT's balanced-usage algorithm beats Plant DNA Designer on harmony (0.930 vs 0.774) — exactly as expected, since matching natural frequencies is IDT's sole objective. TISIGNER gets decent start-codon openness but among the worst safety. That a dedicated single-objective tool beats us on its own axis is evidence the benchmark is fair, not rigged.
Plant DNA Designer's contribution is not winning any single axis but being the only strategy that holds every axis within bounds at once:
Consistent across the panel, not an averaging artifact. Per protein, PDD beats
all four external-tool algorithms on safety (6/6) and GC fidelity (6/6),
and on body structure (4/6), start-openness (3/6) and dynamics (2/6), folding mode
highest overall. It does not win harmony — IDT's single-objective design takes
that — nor tAI/MTDR, which CAI-max wins because in GC-rich rice the argmax codons
are also the high-tGCN ones. An honest non-dominance rather than a clean sweep.
python -m benchmark prints the full per-protein table and win counts.
Folding mode (the harmonize toggle) pushes hardest on the folding-relevant axes — best translation dynamics and start openness — at a deliberately lower CAI (0.775), exactly the trade the codon-harmony / translation-dynamics literature argues for.
Caveat: these are in-silico proxy metrics on a fixed panel — evidence that the design strategies produce measurably different sequences, not a wet-lab expression claim. The hosted tools are web-only and host-generic, so each comparator reproduces the tool's documented algorithm rather than scraping its server. Definitive external validation requires head-to-head wet-lab expression of PDD-designed vs. tool-designed sequences.
Every panel is rendered as self-contained SVG/HTML — no external chart libraries.
Design Report Card & simple view — a one-word grade, a 0–100 score, and four plain-language traffic-light checks; switch to Expert for all 15 analysis panels.

Translation dynamics (flagship) — the ribosome's velocity trajectory (green) shaped to an ideal folding schedule (orange): a slow start-up ramp, fast domain interiors, and a pause at each predicted inter-domain linker.

Intron-Mediated Enhancement (flagship) — scores intron potential (IMEter) and auto-designs a splice-competent, enhancer-packed intron for the 5′UTR — a plant-only route to 10–50× higher expression.

Full expression cassette — promoter → 5′UTR → IME intron → CDS → terminator, assembled from validated, cited parts and compatibility-checked.

| Biological target (trait → mechanism → protein) | Genetic-algorithm report |
![]() | ![]() |
| Pareto trade-off front (NSGA-II) | CRISPR guide-RNA table |
![]() | ![]() |
| Multi-gene pathway balance | Transgene safety report |
![]() | ![]() |
You need Python 3.12+ (NumPy ≥ 2.5 requires it).
cd cool
pip install -r requirements.txt
python -m uvicorn api.main:app --reload --port 8000
Then open http://localhost:8000 in your browser, pick a crop and a trait, and click Generate.
To run the test suite:
cd cool
python -m pytest tests/ -q # 172 tests
The pipeline is what turns "pick a trait" into a defensible design:
Crop
↓
Trait (e.g. drought tolerance)
↓
Validated plant mechanism (DRE/CRT dehydration signaling)
↓
Effector protein (DREB2A — AP2/ERF transcription factor)
↓
De-novo DNA generation (genetic algorithm, crop-codon-optimized)
↓
Expression optimization (5'UTR / IME intron / GC3 / stability)
↓
CRISPR + safety analysis
| Term | What it means |
|---|---|
| Codon optimization | Swapping DNA "words" for synonyms the crop reads most efficiently, so it makes more protein. |
| CAI / tAI | Scores (0–1) for how well the codons match the crop's preferences and tRNA supply. Higher = better. |
| GC content / GC3 | How much of the DNA is G or C. Balanced GC helps stable, strong expression. |
| CRISPR guide RNA (gRNA) | A short sequence that directs the Cas protein to cut DNA at a chosen spot. |
| On-target / off-target | How well a guide cuts where you want vs. how likely it is to cut elsewhere. |
| Base editing (CBE/ABE) | Changing a single DNA letter without cutting the whole strand. |
| mRNA | The working copy of a gene that the cell translates into protein. |
| miRNA silencing (PTGS) | A plant's natural way of switching off a gene; best avoided for a new transgene. |
| TFBS | Tissue-specific "switches" in DNA that decide where a gene turns on. |
| Transgene | A gene moved into an organism from elsewhere. |
| Trait vs. mechanism | A trait (e.g. "drought tolerance") is a phenotype; it's produced by a mechanism (a pathway) and the effector protein(s) that act in it. |
| Effector protein | The actual protein that delivers a trait — what the designed DNA encodes (e.g. DREB2A for drought). |
| Intron | A piece of DNA cut out of the mRNA before translation. In plants, the right intron near the start boosts expression. |
| IME / IMEter | Intron-Mediated Enhancement — a plant-only effect; the IMEter score predicts how strongly an intron will enhance expression. |
All the biology lives in a clean, testable core with no web or UI code, so it can be reused and trusted independently.
cool/
├── core/ # The science — pure Python, fully tested
│ ├── motifs.py # Plant regulatory motif definitions
│ ├── codons.py # Codon usage / CAI / tAI accessors (loads real per-species tables)
│ ├── codon_usage_tables.py # 18 real per-species codon tables (generated from Kazusa CUTG)
│ ├── data/cutg_plant_subset.spsum # committed Kazusa CUTG source data (18 species)
│ ├── species.py # 18 crop profiles (monocot + dicot)
│ ├── mechanisms.py # Trait → mechanism → effector protein knowledge base
│ ├── intron.py # ★ Intron-Mediated Enhancement: IMEter + intron designer
│ ├── cassette.py # Full-cassette co-design: validated part libraries + compatibility
│ ├── pathway.py # Multi-gene pathway: codon-optimality expression balancing + HDGS check
│ ├── gc3.py # GC3 balance + tRNA-demand (MTDR) scoring
│ ├── stability.py # mRNA stability + plant miRNA scanners
│ ├── base_editor.py # CBE / ABE / Cas12a / chromatin scoring
│ ├── expression.py # Tissue-specificity + expression-quality scoring
│ ├── analyzer.py # Pulls every metric together
│ ├── crispr.py # CRISPR on-target (Doench RS2) + off-target (CFD)
│ └── designer.py # Multi-objective GA: dimensionless weights, position-
│ # dependent structure, distribution matching, NSGA-II
├── api/ # FastAPI: turns a request into the full JSON report
├── web/ # Browser frontend (no build step, no Node/npm)
├── benchmark.py # Reproducible benchmark vs external-tool algorithms (JCat/IDT/TISIGNER)
└── tests/ # 172 tests covering the science and the API
Built with: Python · FastAPI · BioPython · a little HTML/CSS/JS. Optional ViennaRNA gives exact RNA folding; without it, a built-in fallback keeps results meaningful.
| Method | Path | Purpose |
|---|---|---|
GET | / | Web UI |
POST | /api/design | Run the full design + analysis, return JSON |
WS | /ws/design | Same, but streams live progress |
POST | /api/analyze | Quick metrics + motif scan for a sequence you paste in |
POST | /api/grna | CRISPR guide design for a sequence |
GET | /api/export/{fmt} | Download as genbank, fasta, or sbol |
GET | /api/health | Health check |
For readers who want the detail behind each check (and for the full specification — every objective, formula, weight, normalization and citation — see the Technical Reference):
tools/build_tgcn.py), GC3, tRNA-demand (MTDR),
and mRNA-stability motifs. Each of the 18 crops uses its own real codon-usage
table measured from the Kazusa Codon Usage Database (CUTG, plant division) —
no cross-species proxies. The committed source data and the generator
(tools/build_codon_usage.py) make the tables fully reproducible, and the real
data cleanly separates the monocot/dicot clade axis (monocots are GC3-rich,
dicots AT-/balanced). Rather than driving CAI to 1.0 (argmax at every codon,
which over-optimises and de-tunes folding), it also rewards matching the
natural codon-usage distribution (1 − total-variation distance to the
reference) — aiming for "high but natural" usage where plain CAI saturates
(Angov 2008; Mignon 2018).If you use Plant DNA Designer in your research, please cite the preprint:
Dinesh K, Swetha H. Plant DNA Designer: A Computational Framework for Multi-Objective Codon Optimisation and Synthetic Gene Design in Crop Biotechnology. bioRxiv (2026). https://doi.org/10.64898/2026.08.02.742271
Software archive (all versions): Zenodo — https://doi.org/10.5281/zenodo.21848741
@article{dineshk2026plantdnadesigner,
title = {Plant DNA Designer: A Computational Framework for Multi-Objective
Codon Optimisation and Synthetic Gene Design in Crop Biotechnology},
author = {Dinesh K and H. Swetha},
journal = {bioRxiv},
year = {2026},
doi = {10.64898/2026.08.02.742271},
url = {https://doi.org/10.64898/2026.08.02.742271}
}
Released under the MIT License. © 2026 Dinesh K and H. Swetha, Voxelta Private Limited.