TrialFinder
Browser UI voor het zoeken in ClinicalTrials.gov met natuurlijke taalvragen.
Een web-app waarmee iedereen ClinicalTrials.gov in gewone taal kan doorzoeken. Resultaten worden gerangschikt, weergegeven op een kaart met Cesium, en verfijnd via chat. Dezelfde gegevens die mijn find-trials MCP-server blootstelt aan AI-assistenten, maar dan gebouwd voor mensen die op het web browsen.
Het probleem
Patiënten die zoeken naar klinische onderzoeken stuiten op een complexe, jargon-rijke overheidsdatabase. ClinicalTrials.gov retourneert duizenden resultaten voor elke veelvoorkomende aandoening, en weinig patiënten hebben de tijd of expertise om te filteren op fase, wervingsstatus, geschiktheid of locatie. AI-agenten die proberen te helpen, hebben ook een gestructureerd, bevraagbaar oppervlak nodig dat verder gaat dan ruwe trefwoordzoekopdrachten.
De aanpak
Een React-frontend met een Cesium 3D-globe, ondersteund door een Hono-worker op Cloudflare. Het frontend rendert proeflocaties op de globe met straatniveau zoom (minimaal 50m), zodat patiënten kunnen zien waar proeven lopen. Multi-turn chat houdt gespreksgeschiedenis, eerdere resultaten en patiëntprofiel in context. De backend bevraagt de ClinicalTrials.gov API v2 en gebruikt Cloudflare Workers AI om de geschiktheid te beoordelen voordat resultaten worden geretourneerd.
Opmerkelijke beslissingen
- Patiëntprofiel-gestuurde zoekopdracht. Accepteert leeftijd, aandoeningen, locatie en eerdere behandelingen, en beoordeelt vervolgens de geschiktheid in plaats van alleen op trefwoorden te matchen.
- Match scoring. Resultaten gemarkeerd als sterk, mogelijk of zwak met redenen, zodat patiënten en AI-agenten snel kunnen prioriteren.
- Conversationele context. Vervolgvragen zoals 'zijn er proeven dichter bij huis?' werken zonder profielinformatie opnieuw in te voeren.
- 3D-globe met Cesium. Straatniveau zoom en 'Openen in Maps'-links verbinden elk onderzoek met een echte locatie in plaats van een lijstvermelding.
- Stateless per-request ontwerp. Geen logs, geen analyses, geen profielen server-side opgeslagen.
Status
Live op clinical-trials.davidloor.com. Recent werk aan Cesium camera- en zoomfixes, marker rendering en een MapLibre naar Cesium migratie.
Want similar work for your team?
AI-native senior engineering for AI, cloud, and web. Open to consulting engagements and full-time roles.