LUMINA • Biotech intelligence dashboard

A dashboard that shows evidence, not verdicts.

The front door to Sonny’s grounded research: comparison and navigation first, deep dives when an expert needs them, and a bench for your own data.

ROLE

Solo builder

TIMELINE

2025–present

TEAM

Solo (0→1)

SKILLS

Dashboard UX, evidence views, scientific data viz, React, live monitoring

LUMINA home: the Ask Sonny composer above the deep research, IHC, and flow cytometry capability cards
Overview

A front door to Sonny that anyone can use.

Sonny does the grounded research, but it lived in a terminal. A scientist shouldn’t need a command line to ask a question, and shouldn’t have to take the answer on faith.

LUMINA is the surface anyone can work with Sonny through: ask a question, watch the reasoning stream as it forms, and open any citation to check it yourself. I built it evidence-first: it starts with what you can scan and rank, and only opens into detail when you ask for it.

Problem

A wall of text is not a review tool.

Most AI research output is a document. For a quick read that’s fine. For diligence it isn’t, because the expert’s real job is comparison: this target against that one, this trial against the field, what changed since last week. You can’t do that by scrolling paragraphs. The second trap is the confident verdict: a tool that prints “BUY” or “SELL” is asking to be trusted on faith, when experts want the drivers, the uncertainties, and what would change their mind.

So LUMINA supports the decision instead of making it. Every view leads with drivers, uncertainties, triggers, and verification, not a score. Each point shows why it matters and what would change it, and links back to the record Sonny grounded it on. There’s no BUY/SELL field to fill, so the tool can’t fake confidence it hasn’t earned.

Build

Pull and push, over the same evidence.

LUMINA is a React app over an Express backend, with Sonny running in a worker thread. The engine sends its trace through a MessagePort and the backend republishes it as one stream. That is the glass box you watch. It works in two directions over one shared evidence layer: you pull answers on demand, and it pushes what changed while you were away.

The push side is the watchlist. You put targets, assets, and competitors on a list, and LUMINA re-fetches PubMed, ClinicalTrials.gov, and news against them, dedupes by normalized URL, and flags anything newer than your last visit. What changed lands at the top. Scheduled refresh and a real semantic diff are the next build, not a claim I’ll make yet.

Pull

you ask

Ask Sonny
Grounded research run
Report with visible references

Push

it watches

Watchlist
Continuous monitoring
Intelligence feed of what changed
React + ViteExpress backendSonny engine in a workerLocal models (Ollama)SSE trace streamLive figures
Workbenches

Literature is not the only evidence a scientist has.

Diligence does not stop at the papers. Scientists have their own data, and it usually gets analyzed in a tool that hands back a number with no record of how it got there. So LUMINA runs three wet-lab workbenches over your files: IHC, deconvolving DAB from the counterstain and scoring by H-score and percent positivity; flow cytometry; and western blot densitometry, background-corrected against a loading control.

Nothing in these views is a screenshot. Drag a gate on the flow plot and every downstream gate and population count recomputes. The research run works the same way: Sonny plots expression data as it lands, GTEx on a log axis beside the antibody-scored Human Protein Atlas panel. A target that looks broad in RNA can be far more restricted at the protein level, which changes how you read its ADC safety window.

Decisions

Evidence discipline, all the way to the surface.

The hardest calls were subtractive. Cutting the BUY/SELL verdict. Refusing to show a number the evidence couldn’t support. Deleting the indication and modality dropdowns once Sonny could read scope out of the prompt itself. Keeping reference counts visible on report cards so a summary never hides a claim’s backing. Sonny’s grounding discipline only holds if it survives all the way to the pixels, and the architecture leaves room above this for a system-level trust layer.

Roadmap

Deepen the watch, then earn more trust.

Shipped

Glass-box trace, live figures, three wet-lab workbenches

Next

Scheduled watch + semantic diff

Then

System-level trust layer

Later

Combination screening and patent-sequence benches

Reflection

Good review UX starts with comparison, not text.

The best thing a research tool can do for an expert is get out of the way of their judgment: lay the evidence out so they can compare quickly, and make every piece of it trivial to verify.

LUMINA and Sonny are two halves of one thesis. Sonny makes the research verifiable, LUMINA makes it usable.