Inspiration
Finding a clinical trial is only the first step. The harder problem is understanding why a study might be worth investigating and which eligibility details are still unknown.
Clinical trial criteria can bury important requirements about disease stage, biomarkers, prior treatments, laboratory values, and performance status in dense medical text. TrialLens makes those requirements easier to inspect without pretending to replace a clinician or study coordinator.
What it does
TrialLens helps a visitor explore recruiting breast-cancer studies using a fictional situation written in plain language. It extracts structured facts, then asks the visitor to review them before searching. Facts can be corrected, marked “Not sure,” removed, or added.
TrialLens retrieves studies from ClinicalTrials.gov and examines their inclusion and exclusion criteria. For each study, it shows a conservative Possible or Uncertain result, why the study surfaced, what remains unresolved, and the original eligibility wording. It also groups unresolved requirements into Questions worth asking the study team.
There is no eligibility score or claim that someone qualifies. Only the study team can confirm eligibility.
How we built it
TrialLens uses a multi-stage workflow:
Description → Reviewed facts → Trial discovery → Criterion parsing → Evaluation and verification → Explainable results
ClinicalTrials.gov supplies the study records. NVIDIA Nemotron models run through Nebius Token Factory: Nemotron 3 Nano extracts editable facts, while Nemotron 3 Super parses eligibility language and supports criterion evaluation and verification.
The application is built with Next.js and TypeScript on Vercel. Results stream to the browser as the analysis runs. Supabase caches parsed public trial criteria, and Upstash Redis supports rate limits and daily run budgets.
The models do not get the final word. Code-based checks reject unsupported conclusions, preserve missing information as unknown, and keep the displayed study tiers conservative.
Explainable eligibility
A list of “matches” alone can hide the most important question: what evidence supports each result?
TrialLens shows a criterion-by-criterion view alongside the study’s original wording. A stated fact may help assess one requirement, while an unmentioned laboratory result or treatment detail stays unresolved. The visitor can follow the ClinicalTrials.gov link and take specific questions to the study team.
Challenges and what we learned
Eligibility criteria contain nested conditions, medical abbreviations, thresholds, timing rules, and requirements that call for clinical judgment. A short description cannot resolve all of them. We found that making uncertainty visible was more useful than forcing a confident answer.
Building TrialLens also meant balancing model reasoning, structured outputs, verification, serverless runtime, and cost controls. The current demo has been tested with fictional cases, but it has not been clinician validated and makes no clinical-accuracy claim.
The useful outcome is not “Here are five matches.” It is: “Here are studies worth investigating, why they surfaced, what we still do not know, and what to ask the study team next.”
What's next
We want to improve fact extraction and criterion coverage, add clinician review, and implement location and travel-distance filtering.
Built With
- clinicaltrials.gov-api
- nebius-token-factory
- next.js
- nvidia-nemotron
- react
- server-sent-events
- supabase
- typescript
- upstash-redis
- vercel


Log in or sign up for Devpost to join the conversation.