CuRE — Collaborative Research Ecosystems

RWD-native, AI-native research infrastructure

An integrated suite that captures, connects, translates, analyzes, and activates cross-modal health data across institutional boundaries — turning fragmented real-world data into one governed research record that speaks FHIR, OMOP, SDTM/CDASH, eCTD, and RIM on the way to regulated outputs.

FHIR / SMART on FHIR OMOP CDM v5.4 SDTM & CDASH eCTD / RIM RWD-first

Explore the suite by bundle

The apps group into the bundles teams adopt together — a quick way to navigate the suite. Tap any app for details.

Translational

Connect molecular, manufacturing, shipping, and clinical signals to patient outcomes — now extending upstream toward first-in-human IND enablement across existing apps.

OMOP Common Data Model — one governed foundation connecting all 21 products · FHIR · SDTM · CDASH

marks products that serve more than one team — adopt them once, and they pull their weight across every bundle they touch.

A different approach

RWD-native: data first, studies second

Traditional research platforms start with a study protocol and build data collection around it. CuRE inverts this: patient data flows continuously into a governed common model, and studies layer on top of data that already exists.

This bottom-up approach means studies start in weeks, datasets are richer, and one infrastructure serves many studies at once — because the data isn't locked inside a single protocol, every product composes on the same governed record, and validation evidence is captured as work happens.

  • RWD-to-submission: FHIR, CRO files, registries, labs, and patient inputs land on OMOP, then flow toward SDTM, TMF, eCTD, registration, and labeling outputs
  • Cross-modal evidence: Ask whether cryopreservation, manufacturing variance, shipping time, biomarkers, ePRO adherence, and EHR history affect CAR-T outcomes
  • Attributable AI: Human-in-the-loop AI across capture, validation, mapping, briefings, and inspection support — with confidence, sources, and correction paths
  • Compliance substrate: Part 11, Annex 11, audit chains, source lineage, AI logs, validation evidence, and regulatory acknowledgements are captured as product events
  • Fewer steps: Reduce duplicate entry, manual queries, reconciliation, report assembly, and the cognitive load between a research question and usable evidence

Studies & Applications

Registries, trials, decision support, safety monitoring

OMOP Data Foundation

Harmonized, governed, multi-institutional

Patient & Clinical Data

EHRs, ePRO, labs, claims, manufacturing, shipping, biomarkers

Metadata-driven study build

Design once, generate everywhere

Most teams build CRFs, SDTM mappings, define.xml, and edit-checks separately, then reconcile them by spreadsheet. CuRE carries one governed, versioned study-design metadata record — a built-in Metadata Repository (MDR) — so downstream artifacts are generated from the design, not hand-built in parallel.

It's a capability woven through the apps you already run, not another standards tool to integrate: Control anchors the canonical, USDM-shaped study design; Conduct owns the standards plane — a governed CDISC Controlled Terminology register, a concept/vocabulary service, and the CDASH → SDTM → ADaM → define.xml traceability spine; Capture owns the reusable form library; Calculate owns the ADaM and define specs. One semantic substrate ties them together.

  • One governed source of truth: Study design, controlled terminology, mappings, and forms are one versioned object — not four stores reconciled after the fact
  • Generated, not rebuilt: CRFs, SDTM mapping, define.xml, and edit-checks emit from the design, so a change propagates instead of being re-keyed
  • End-to-end traceability: Follow any value from protocol concept → CRF field → SDTM variable → ADaM → define.xml, both directions
  • CDISC + OMOP, not either/or: OMOP-native at rest for analytics, CDISC/USDM-grounded for study design — a combination incumbents do not hold

Governed study-design metadata · MDR

Control · Conduct · Capture · Calculate — one versioned source

CRFs / forms
Capture
SDTM · define.xml
Conduct
Edit-checks
Capture · Conduct
ADaM · TLFs
Calculate

Generated from the design — not hand-rebuilt in parallel.

The platform, in general

Differentiators that come from the platform, not any one app.

Collaborative Research Ecosystems — from real-world data to submission-grade evidence on one governed OMOP record.

P-01

RWD from the ground up. trial, registry, EHR, ePRO, biomarker, cytogenetic, manufacturing, and shipping signals resolve to the same person, visit, specimen, and outcome context — cross-modal questions are native, not integration projects.

P-02

True integration, not an acquired portfolio. Conduit ingests every external feed; Conduct maps FHIR, CRO files, registries, labs, and claims to OMOP CDM v5.4 once; every other product reads from that canonical model.

P-03

Standards-native last mile. eCOA, RTSM, RBQM, E2B(R3), eTMF, eCTD, RIM, and labeling share one governed evidence chain instead of drifting into vendor-specific silos.

P-04

Design once, generate everywhere. one governed study-design metadata record — a built-in Metadata Repository (MDR) spanning Control (study design), Conduct (CDISC controlled terminology + concepts), Capture (forms), and Calculate (ADaM/define) — generates CRFs, SDTM mapping, define.xml, and edit-checks, instead of hand-building each in parallel and reconciling by spreadsheet.

P-05

AI-native throughout — field-level validation at capture, column classification at ingest, grounded RAG Q&A over the study corpus (TMF, patient chart, translational facts), AI-drafted case narratives and CSR scaffolding, and a closed RBQM loop where a risk signal re-scopes monitoring — with every model call mediated and audited through one gateway (Clarion).

P-06

Persona-first apps sit around the core. site staff (Capture), patients (Compass), physicians (Cue), analysts (Calculate), quality (Caliber), safety (Canary), translational (Cyto), BD (Commons), and regulatory teams (Compend/Consign/Consulate/Cachet).

P-07

Built for GxP from day one — 21 CFR Part 11 + EMA Annex 11 audit trails, RLS-isolated tenants, HMAC-chained migrations, validation evidence, and regulated outputs without a separate validation project.

P-08

Continuously validated, always current. Incumbent clinical platforms cut two or three validated releases a year — between them, your fix waits. CuRE ships continuously, and every release carries regenerated validation evidence (CSA-first, per FDA's 2025 guidance): validated on every deploy, not a few times a year. You're always on the current, validated version, and critical fixes reach you by construction — no backport schedule.

P-09

A fraction of the cost of the comparable point-solution stack. one platform, one data model, and one validation story replace per-vendor licenses, integration projects, and re-validation cycles.

How you adopt CuRE

One platform. One agreement. Adopt at your pace.

CuRE isn't sold module-by-module with an integration project bolted onto every addition. You sign one enterprise agreement — priced to start at a single app — and it scales with your program as your data estate grows and you switch more apps on. No re-procurement to add an app, no integration work between CuRE products, and no big-bang rollout.

Start with one app — priced as one app

Come in for the app you need today, at a single-app price of entry. One platform agreement covers the whole suite from day one, so there's no suite-sized commitment to begin and no separate purchase every time you grow.

See your own data across the whole suite

Because every app runs on one governed OMOP record, the moment your data lands in one app it's visible across the platform. Explore any app with your own data already in it, in a governed, sandboxed mode — and watch how it would surface before you activate it. No competitor whose apps don't share a substrate can show you that.

Activate app-by-app, when you're ready

Turn an app to production the moment you need it. Regulatory-required and advanced features light up per app, each with its own validation evidence delivered at activation — so you grow into the platform on your timeline, and only pay for what you're actually running.

No integrations inside CuRE — adapters ready for the rest

Adding a CuRE app takes zero integration work: apps are views on the same governed record, natively connected. You only integrate to reach outside systems — EHRs, safety databases, eTMF, and more — and adapters for many of them are already built and waiting.

The result: procurement happens once, expansion is a switch you flip, and the platform grows with you instead of restarting a buying cycle every time your program does.

AI usage & credits

AI that's built in — with room to reach further.

AI runs throughout CuRE — validating data, drafting narratives, summarizing a record, answering grounded questions. You get a generous allowance built into the platform, and when a task calls for the most capable models, you can reach for them on transparent, per-model terms. Three simple lanes, so the right model is always within reach.

Included allowance

Every plan comes with an included AI allowance on capable, cost-efficient models — enough to power the everyday AI woven through the platform at no extra charge. The AI that runs your day-to-day work is simply part of CuRE.

Prepaid credits — any model, including frontier

For the heaviest reasoning, CuRE's commercial model uses prepaid AI credits purchased by card for any allow-listed model, including frontier models. Per-model terms will publish the provider's own rate plus a clear margin, so teams can see what a premium run will draw before they choose it.

Bring your own keys

For contracted enterprises with their own model-provider agreement, the model supports bringing their own keys and rates — while every execution stays inside CuRE's governed, fully audited boundary.

No black-box AI bill and no lock-in: predictable everyday usage is included; premium-model terms will publish the provider rate plus a clear margin; contracted enterprises can use their own provider agreement.

See it work — cross-app journeys

One record, threaded through the whole platform

Each app has its own hands-on demo on its product page. A journey is different: it threads one synthetic patient record through a sequence of apps, where each stage's real engine consumes the output of the stage before it — the way a governed record actually moves across CuRE. All synthetic, all in your browser, nothing touches a backend.

Journey · Conduit → Conduct → Capture → Calculate → Cue → Canary

One governed record, every app

Follow one synthetic patient — subject S-1001 — across the whole pipeline. Conduit classifies the raw tabular feed to OMOP domains; Conduct maps the FHIR Condition into an OMOP condition_occurrence; Capture's eCRF validation flags a value; Calculate characterizes the cohort the record lands in; Cue fires a point-of-care alert; and Canary surfaces the disproportionality signal. Step through the chain and watch each stage recompute from the one before it.

recordS-1001omop person_id8891sexFemaleage68ydxType 2 diabetes (201826)siteBoston General
Stage 1 · CuRE ConduitIngestion front door

Classify the raw tabular feed to OMOP domains

A CRO subject-extract lands at the ingestion front door. Conduit's real column classifier decides each column's OMOP disposition — structural, terminology, or skip — for subject S-1001.

Source columnDispositionOMOP target / domainConf.
SubjectIDstructuralperson.person_source_value95%
Sexstructuralperson.gender_concept_id95%
DateOfBirthstructuralperson.birth_datetime96%
SiteNamestructuralcare_site.care_site_source_value78% ⚑
EnrollmentDatestructuralobservation_period.observation_period_start_date90%
MedicalHistoryterminology→ Condition86%
InternalRowSeqskip90%
Commentsskip90%
Below the 80% threshold forces a human confirm (⚑). The highlighted MedicalHistory column routes its free-text cells to the OMOP Condition domain — that is the fact this journey threads forward.
FeedsConduct
MedicalHistory →Type 2 diabetes · domain=Condition (86%)

The free-text diagnosis routes to the OMOP Condition domain — Conduct resolves and maps it next.

Stage 1 / 6

Why this is more than a toy

Every stage above calls the same vendored per-app engine the standalone demos use — Conduit's column classifier, Conduct's FHIR→OMOP Condition mapper, Capture's field-save auto-query core, Calculate's cohort characterization, Cue's guideline matcher + SaMD firewall, and Canary's MGPS disproportionality methodology — nothing is re-implemented for the journey. The single record is shaped into each engine's input, and each stage's real output feeds the next: the condition_concept_id Conduct resolves is the exact key that defines Calculate's cohort. Where two engines don't share a data shape, a small, clearly labelled adapter bridges them — and the one place the clinical domain genuinely differs (Cue ships an oncology guideline pack) is called out in the stage itself rather than papered over. Everything runs client-side on synthetic data — no backend, no real patient record.

Journey · Control → Conduct → Capture → Calculate

Design once, generate everywhere

Author a study-design element once in Control's metadata repository — the study phase and its condition of interest — and watch it propagate. Control's stage matrix re-derives from the phase; Conduct maps the design's condition into an OMOP condition_occurrence; Capture generates the eCRF and its edit checks; and Calculate regenerates the define.xml cohort and characterization. Change the design at the top and step through — every downstream artifact regenerates from the same metadata.

design elementstudy protocolphasePhase III (randomized)conditionType 2 diabetessnomed44054006omop concept201826
Stage 1 · CuRE ControlStudy-design authority (MDR)

Author the study-design element once

In Control's metadata repository the design is set once: the study phase and its condition of interest. Control's real stage-matrix logic derives the funnel from the phase — change either and everything downstream re-derives.

Funnel stage matrix — derived by Control from the chosen phase (ADR-CTL-010)
ScreenedEnrolledRandomizedOn TreatmentCompleted
study VELT-042screened 115enrolled 83vs. plan behind

Both dropdowns are the study design authored once in Control's metadata repository. The stage matrix above is Control's stagesForType() run live on the chosen phase; the counts come from the real assessStudy(). Everything below regenerates from this same design — no re-authoring.

FeedsConduct
condition of interest →Type 2 diabetes · SNOMED 44054006

The design's condition (a SNOMED code) is the metadata Conduct maps to an OMOP concept next — the single fact this journey threads forward.

Stage 1 / 4

Why this is more than a toy

Every stage above calls the same vendored per-app engine the standalone demos use — Control's stagesForType / assessStudy funnel logic, Conduct's FHIR→OMOP Condition mapper, Capture's field-save auto-query core, and Calculate's cohort characterization — nothing is re-implemented for the journey. The single design element is shaped into each engine's input, and one decision drives them all: the condition_concept_id Conduct resolves from the design's SNOMED code is the exact key that names Capture's disease-specific eCRF field and defines Calculate's cohort. That is the metadata-driven core of the platform — define a study once, and the mapping, the CRF, and the analytics generate themselves rather than being re-authored per app. Everything runs client-side on synthetic data — no backend, no real study.

Journey · Capture → Canary → Compend → Consign

The RWD-to-submission evidence chain

Trace one adverse event from the bedside to the submission gateway. Capture flags the out-of-range lab that surfaces the reaction; Canary works it up into an E2B(R3)-shaped safety case with a validated disproportionality signal; Compend takes the safety narrative into TMF custody, classifying it to a DIA-TMF zone with an inspection-readiness score; and Consign folds it into the assembled eCTD sequence as a Module 5 leaf, in force in the current view. Step through the chain and watch each stage build on the one before it.

subjectS-2001programravucizumab (VELT-042)reactionGI haemorrhageseriousnessserioussubmissionIND 123456
Stage 1 · CuRE CaptureValidation EDC / AE capture

Capture the adverse event at the bedside

A coordinator enters S-2001's labs at the AE visit for the ravucizumab study (VELT-042). Capture's real edit-check core flags the out-of-range hemoglobin — the acute-blood-loss lab behind the reaction.

eCRF edit checks · AE visit1 auto-query open
Hemoglobin · adverse-event labAUTO · OPEN

Hemoglobin value 7.4 g/dL is outside the reference range (12–17.5). Please verify the source.

Capture's real field-save auto-query core, run on S-2001's AE-visit values — the low hemoglobin is the acute-blood-loss lab that evidences the GI haemorrhage reaction. Each query carries a 21 CFR Part 11 attribution (source AUTO, opened by the system user).

FeedsCanary
adverse event →Anticoagulant-X · GI haemorrhage · Serious — hospitalization

The captured suspect-product + reaction crosses to Canary as a pharmacovigilance case (a small adapter re-keys it onto Canary's surveillance subject — the engines were vendored separately, so the AE's identity is carried across, nothing is fabricated).

Stage 1 / 4

Why this is more than a toy

Every stage above calls the same vendored per-app engine the standalone demos use — Capture's field-save auto-query core, Canary's MGPS disproportionality methodology (PRR / ROR / EBGM / EB05), Compend's DIA-TMF cue-matcher and its six-criterion inspection-readiness scorer, and Consign's eCTD lifecycle fold + integrity validator — nothing is re-implemented for the journey. One adverse event is threaded end to end: the reaction Capture surfaces is the case Canary validates, whose narrative is the document Compend files and scores, which is the Module 5 leaf Consign shows in force in the assembled dossier. The four engines were vendored independently and don't literally share a wire type, so a small, clearly-labelled adapter carries the event's identity across each boundary — re-keying the same reaction, never fabricating a stage's output. The whole chain runs on the same synthetic IND (ravucizumab / VELT-042 / IND 123456) the standalone Compend and Consign demos carry. Everything runs client-side on synthetic data — no backend, no real patient record.

Journey · Cascade → Conduct → Calculate

Randomize, supply, analyze

Follow one subject from allocation to analysis. Cascade's real randomization engine allocates subject S-1001 to a study arm — and therefore the drug that arm dispenses; Conduct writes that event to the platform OMOP store, mapping the subject's qualifying indication into an condition_occurrence; and Calculate reads the same cohort straight back out, reporting the arm's dispensed drug among its analyzed exposures. Step through the chain and watch the OMOP substrate close the loop from allocation to analysis.

subjectS-1001studySUGAR-01armMetforminomop person_id8891dxType 2 diabetes (201826)drugMetformin (1503297)
Stage 1 · CuRE CascadeRandomization & supply (RTSM)

Randomize the subject into a study arm

The SUGAR-01 trial enrolls its cohort. Cascade's real permuted-block engine allocates each subject to a 1:1 arm — metformin or placebo — with balance guaranteed at every block boundary. Subject S-1001's draw is the allocation event.

Permuted block · block = 4 · seed SUGAR-01Metformin · 6Placebo · 6
SeqSubjectArmDispenses
01S-1001MetforminMetformin (concept 1503297)← threaded subject
02S-1002PlaceboPlacebo
03S-1003MetforminMetformin (concept 1503297)
04S-1004PlaceboPlacebo
05S-1005MetforminMetformin (concept 1503297)
06S-1006PlaceboPlacebo
07S-1007MetforminMetformin (concept 1503297)
08S-1008PlaceboPlacebo
09S-1009PlaceboPlacebo
10S-1010MetforminMetformin (concept 1503297)
11S-1011PlaceboPlacebo
12S-1012MetforminMetformin (concept 1503297)

Cascade's real permutedBlockSequence — the bit-exact R-compatible MT19937 core the product validates for statistical equivalence against randomizeR / carat (ADR-PLT-042) — allocated the enrolled cohort. Balance holds at every block boundary. Subject S-1001 drew the Metformin arm — the allocation event written to OMOP next.

FeedsConduct
allocation event →S-1001 · Metformin arm · dispenses Metformin

The randomization / dispensation event is written to the platform OMOP store via Conduct's ingest-runner. Conduct maps the subject's study-indication Condition to OMOP next — the honest seam: the vendored Conduct slice is the FHIR Condition mapper, so the event's OMOP write is carried by mapping the indication that keys the analysis; the arm + drug ride alongside as the allocation metadata.

Stage 1 / 3

Why this is more than a toy

Every stage above calls the same vendored per-app engine the standalone demos use — Cascade's bit-exact, R-compatible permuted-block randomization core (validated for statistical equivalence against randomizeR / carat, ADR-PLT-042), Conduct's FHIR→OMOP Condition mapper, and Calculate's cohort characterization — nothing is re-implemented for the journey. One allocation is threaded end to end: the arm Cascade draws for the subject dispenses a drug, that event is written to OMOP through Conduct's real mapper as a condition_occurrence, and Calculate reads the very same cohort back on the exact condition_concept_id Conduct wrote — where the arm's dispensed drug shows up among the analyzed exposures. The three engines were vendored independently and don't literally share a wire type, so a small, clearly-labelled adapter carries the allocation's identity across the OMOP write — mapping the study indication that keys the analysis, never fabricating a stage's output. Everything runs client-side on synthetic data — no backend, no real subject.

Journey · Canary → Caliber → Credo

Safety signal to quality action

Follow one safety concern from a pharmacovigilance signal into a tracked, data-closed quality action. Canary's real disproportionality methodology validates a drug–event signal; Caliber's centralized statistical monitoring turns it into an AE-under-reporting KRI and flags the outlier site; and Credo grades the deviation, routes it to a CAPA, and binds the CAPA's effectiveness check back to that same KRI — so fresh monitoring data, not a human assertion, decides the fix worked. Step through the chain and watch a safety signal become a closed-loop quality action.

programravucizumabstudyVELT-042signalSSRI-Z → Serotonin syndromeeb0510.99csm outlierSITE-07actionCAPA
Stage 1 · CuRE CanaryPV signal detection

Surface the validated disproportionality signal

Over the whole synthetic spontaneous-reporting database, Canary's real MGPS methodology quantifies which drug–event pairs report more than expected. The shrinkage-robust EB05 validates the genuine signal and dismisses the merely-frequent.

Canary's real MGPS methodology (PRR / ROR / EBGM / EB05) run live over the synthetic spontaneous-reporting database, ranked by the shrinkage-robust EB05. The top-ranked pair validates as a genuine safety signal:
DrugEventPRREB05Triage
SSRI-ZSerotonin syndrome18.210.99validated
Statin-YRhabdomyolysis14.99.48validated
Biologic-VInjection-site reaction11.68.39validated
Anticoagulant-XGI haemorrhage7.05.42validated
NSAID-WAcute kidney injury5.03.97validated
✓ Validated signal: SSRI-ZSerotonin syndrome (EB05 10.99 ≥ 2, 121 co-reports) — the reaction whose reporting is disproportionate enough to act on.

DuMouchel MGPS shrinkage separates the planted adverse reaction from background events that are merely reported often — only the validated pair carries EB05 ≥ 2. That validated pair is the safety signal this journey hands to quality.

FeedsCaliber
validated signal →SSRI-Z → Serotonin syndrome · EB05 10.99

A validated safety signal is not the end — it is a quality question: is a site under-handling this reaction? Caliber's centralized statistical monitoring takes it up next.

Stage 1 / 3

Why this is more than a toy

Every stage above calls the same vendored per-app engine the standalone demos use — Canary's DuMouchel MGPS disproportionality methodology (PRR / ROR / EBGM / EB05 with Gamma-Poisson shrinkage), Caliber's centralized statistical monitoring (the additive KRI risk score + robust-z outlier flag, plus the sidecar-owned Poisson AE-under-reporting method), and Credo's deviation severity grading, disposition routing, CAPA lifecycle machine, and the line-for-line evaluateEffectivenessCriterion predicate — nothing is re-implemented for the journey. One safety concern is threaded end to end: the validated drug–event pair Canary surfaces is the KRI Caliber breaches on the outlier site, which is the deviation Credo routes to a CAPA — and the CAPA's effectiveness close binds back to the very same AE-under-reporting KRI, so the safety signal is not closed until the quality metric recovers. The three engines were vendored independently and don't literally share a wire type, so a small, clearly-labelled adapter carries the concern's identity across each boundary — re-keying the same reaction / breach, never fabricating a stage's output. Everything runs client-side on synthetic data — no backend, no real safety record.

See the platform in action

Every research ecosystem is unique. Let's discuss how CuRE can be configured for your needs.