TrialTriage
Find eligible cancer trials in minutes, with a nurse's sign-off.
AI clinical trial matching for oncology nurses and insurers.
Key takeaways
4 things that decide this
- 01Hashlogics built TrialTriage, an AI platform that matches oncology patients to clinical trials, with a nurse signing off on every result.
- 02Large language models rank trials against NCCN guidelines and drug data, and a nurse reviews and finalizes each match.
- 03The platform launched HIPAA-aligned, with TOTP multi-factor login and a 23-action audit trail from day one.
- 04Insurers upload batch files for bulk processing, with live progress over WebSocket.
- Client
- TrialTriage
- Industry
- Healthcare / Oncology
- Region
- United States
- Engagement
- SaaS · multi-role (admins, nurses, patients, insurers) · Full-stack AI web application
TrialTriage helps oncology nurses match patients to clinical trials. Nurses enter de-identified patient data. The platform uses large language models, NCCN guidelines, and drug data to rank matching trials. A nurse reviews and finalizes every result. Insurers can upload batch files for bulk processing. Built HIPAA-aligned, with full audit trails.
The problem we set out to solve.
Oncology nurses spent hours reviewing records, cross-referencing NCCN guidelines, and searching trials by hand.
No central system matched patients to eligible trials by cancer type, stage, biomarkers, and prior treatments.
Slow manual work delayed trial identification and risked missed enrollment windows.
Patient records, NCCN guidelines, drug databases, and trial data lived in separate systems.
Insurers had no automated batch eligibility processing.
Audit trails and de-identification for protected health information were insufficient.
What success needed to look like
- Nurses get ranked trial matches in minutes instead of hours of manual cross-referencing.
- Every recommendation stays under nurse review. AI ranks, the nurse finalizes.
- Patient data stays de-identified and every action is auditable, aligned with HIPAA.
- Insurers can process trial-eligibility checks in batches, not one at a time.
How we delivered it.
- 01
Diagnose
Mapped how nurses manually cross-checked patient records against NCCN guidelines and trial databases. The search, not the eligibility decision, was eating the hours.
- 02
Design
Designed the AI ranking pipeline so LLM trial picks stay in a nurse review-and-adjust loop. Also designed the de-identification model (age ranges, ZIP prefixes, pseudo-patient IDs) and the insurer batch workflow.
- 03
Build
Built the platform on NestJS and PostgreSQL, with Fireworks AI matching trials against NCCN guidelines and drug data. Redis jobs run insurer batches, and Socket.IO streams live progress.
- 04
Launch
Shipped with session auth, TOTP multi-factor login, and a 23-action audit trail from day one. The platform launched HIPAA-aligned instead of retrofitted.
- 05
Run
Kept extending the drug database and cancer-type tree. Tracked AI usage to keep matching accuracy under nurse oversight as volume grew.
What we built.
We built a cloud AI platform that brings patient records, NCCN guidelines, drug data, and trial data into one place. Large language models generate ranked trial matches. A nurse reviews, adjusts, and finalizes every one, so clinical judgment stays in the loop. The platform supports single patients and insurer batch files, with live progress over WebSocket and HIPAA-aligned controls throughout. It tracks 23 audit action types and enforces role-based access for four user types.
- EnterNurse enters de-identified patient data: cancer type, stage, biomarkers, prior treatments.
- RankFireworks AI ranks trials against NCCN guidelines and drug data.
- ReviewNurse reviews and adjusts the ranked matches.
- FinalizeNurse signs off. The record moves forward with an audit entry, not a raw AI output.
- BatchInsurers run the same ranking across a CSV upload, with progress over WebSocket.
The AI never finalizes a match on its own. Every step after Rank passes through a nurse.


Tech stack
- React 18.3 + TypeScript
- Vite 5.4 (SWC)
- shadcn-ui
- Tailwind CSS 3.4
- NestJS 11 + Swagger/OpenAPI
- PostgreSQL (Neon serverless)
- Redis (job queues)
- Docker + Docker Compose
- Vercel
- GitHub Actions + SonarQube
- TanStack Query
- Node 22
Integrations
- Fireworks AI (LLM API)
- AWS S3 (file store)
- BullMQ (background processing)
- Socket.IO (real-time)
- Paubox (HIPAA email)
- Stripe
- SendGrid
Roles & access
- Admin
- Nurse
- Patient
- Insurer
Security
- Session-based auth with HttpOnly cookies
- TOTP multi-factor authentication with backup codes
- bcrypt password hashing
- Field-level PHI encryption and automated PHI masking
- Audit trail across 23 tracked actions
- HIPAA alignment
- Helmet.js, strict CORS, and rate limiting



If your AI ranks patients against trials, speed only counts once a human signs off. We built TrialTriage to rank fast and left the nurse as the final decision-maker.

