mrna-design-studio / demo /DEMO_SCRIPT.md
offtargeteffect's picture
Replace clustering with Candidate Analysis tab
2038bdc verified
|
Raw
History Blame Contribute Delete
6.05 kB

mRNA Design Studio β€” Demo Script (full run-through)

Live app: https://offtargeteffect-mrna-design-studio.hf.space Login: username admin Β· password vOAMljsXrzCemLZK4A38 Open in its own browser tab β€” NOT the Hugging Face embedded preview (that loops on login).


0. Prep (5 min before)

  • Visit the URL to wake the Space (free tier sleeps; first load is slow). Log in once.
  • Have the CSV ready to drag in: demo/demo_sequences_extended.csv (14 constructs).
  • (Optional) Postgres path β€” keep these handy for the Import Data β†’ PostgreSQL form: host ep-blue-flower-abs3fw0x.eu-west-2.aws.neon.tech Β· port 5432 Β· db neondb Β· user neondb_owner Β· pass npg_oJzU6SfIK7yg Β· table mrna_sequences
  • (Optional) For a no-login live demo: delete the MRNA_STUDIO_PASSWORD secret in Space settings.

The pitch (say this first, ~30s)

"This is a workbench that takes mRNA sequence data from import all the way to a QC'd, scored, assembled construct β€” in one no-code UI. I'll walk the funnel: import β†’ analyze & flag liabilities β†’ compare candidates β†’ score β†’ track runs β†’ assemble."


1. Import Data (~90s)

  • [Click] the Import Data tab.
  • CSV path: drag demo_sequences_extended.csv onto the uploader β†’ it auto-suggests column mappings (gene_name, cds, UTRs…) β†’ Import Records.
  • OR Postgres path: choose PostgreSQL, paste the connection details above, Connect β†’ pick table mrna_sequences β†’ Preview β†’ Import Records.
  • [Say] "It ingests messy real-world tables β€” component-based or monolithic β€” and maps them to a structured mRNA model automatically."

2. Worklist β€” analysis + liability/QC (~3 min) β˜… NEW

  • [Click] the Worklist tab β†’ your 14 sequences are listed.
  • [Click] the Analysis dropdown β†’ Base Analysis β†’ Run.
  • [Show] the new columns populate: GC%, CAI, Homopolymers, Restriction Sites, and the new QC (Pass/Review Β· score) and Liabilities count.
  • [Click] a row (e.g. eGFP-hBG-HEK) β†’ a Liability / QC breakdown appears below the table:
    • a QC scorecard (0–100 score, Pass/Review/Fail verdict, severity counts),
    • a ranked list of flags with severity, detail, location, and a recommendation (e.g. internal restriction site, uORF in the 5β€²UTR, elevated uridine).
  • [Say] "This is the developability/liability overlay β€” every candidate gets a QC score and specific, actionable flags, right on the candidate list."

3. Candidate Analysis (~3 min) β˜… NEW

  • [Click] the Candidate Analysis tab.
  • [Show] the Comparison scorecard β€” every candidate scored 0–100 on the four mRNA objectives (Expression, Stability, Immunogenicity, Manufacturability) + an Overall, ranked, with a β˜… top-N shortlist (drag the slider).
  • [Say] "This is the design trade-off view β€” a candidate can win on expression but lose on immunogenicity. You rank and shortlist on the criteria that actually matter for mRNA."
  • [Use] the Inspect candidate dropdown β†’ the Sequence / structure map shows that molecule's region bands (5β€²UTR/CDS/3β€²UTR/polyA), GC profile, and markers for restriction sites / homopolymers / liability motifs β€” i.e. where the problems are β€” plus its full liability scorecard.
  • [Say] "And drill into any candidate to see exactly where its features and liabilities sit."

4. Model Repository (~1 min)

  • [Click] the Model Repository tab β†’ browse models; note each has a version.
  • [Show] the two built-in scorers: mRNA Stability Scorer and RNA Structure Scorer (and that you can register a local Python model or a remote API endpoint).

5. Score the worklist (~1 min)

  • [Click] back to Worklist β†’ Analysis dropdown β†’ pick a model (e.g. mRNA Stability Scorer) β†’ Run.
  • [Show] a score column appears; sort by it to rank candidates. Export CSV for the lab.
  • (Run a second model too β€” e.g. RNA Structure Scorer β€” so you have two runs to compare next.)

6. Experiments β€” run history + comparison (~2 min) β˜… NEW

  • [Click] the Experiments tab.
  • [Show] Registered models (with versions) and a Run history table β€” every scoring run is logged with version, N, mean/range of scores, and timestamp.
  • [Use] the Compare runs dropdowns (Run A baseline β†’ Run B) β†’ a summary shows mean Ξ”, β–² improved / β–Ό worsened counts and a per-sequence delta table.
  • [Say] "This is the lifecycle layer: track every scoring run and compare versions or scorers to see exactly which candidates moved and by how much."

7. Parts Workshop β†’ Assemble β†’ Generate (~2 min)

  • Parts Workshop: browse reusable parts (5β€²UTR / Kozak / CDS / 3β€²UTR / poly-A) and compose.
  • Assemble Plasmid: pick the pUC19-MCS backbone, run QC, export the assembled construct.
  • Generate Sequences: produce a codon-optimized variant.
  • [Say] "Close the loop β€” assemble into a plasmid with QC, or generate optimized variants."

If you only have 3 minutes

Import demo_sequences_extended.csv β†’ Worklist Run base analysis β†’ click a row for the liability breakdown β†’ Candidate Analysis scorecard + map β†’ score a model β†’ Experiments compare. That hits the four differentiators (QC liability, candidate comparison, scoring, experiment tracking).

Likely questions

  • "Where does data live?" β†’ CSV/Excel upload or a PostgreSQL connection you provide.
  • "Custom models?" β†’ register a local Python model or a remote API endpoint; runs are tracked.
  • "How is this like/unlike ENPICOM?" β†’ same no-code, data+AI philosophy; this is the design/build + light-liability side (mRNA), not NGS-scale repertoire discovery. See demo/ENPICOM_gap_analysis.md.
  • "Is it hosted?" β†’ runs on Hugging Face Spaces (Docker); also runs locally with make run.