Skip to content
Columbia MSDS Dec 2026
Resume
All projects

Clinical NLP · Data Provenance

VisitPrep

Turn synthetic health journals into traceable symptom signals, trends, and visit summaries. Every extracted signal retains its source text and evidence span.

  • Next.js
  • TypeScript
  • PostgreSQL
  • Drizzle
  • Deterministic NLP
  • Vitest
VisitPrep synthetic patient workspace showing journal signals and visit preparation
Project interface from the source repository; synthetic data.

What I built

A source-first pipeline from journal entry to an immutable, reviewable report.

  • Implemented deterministic server-side extraction for symptom assertions, severity, and evidence spans without an external AI API.
  • Built isolated synthetic workspaces, transactional journal persistence, idempotent retries, and revision-checked report snapshots.
  • Added rolling-window analytics, explicit missing-data handling, PostgreSQL migrations, and unit/database integration checks in CI.

How it works

  1. Validate and persist a synthetic journal entry in a session-scoped workspace.
  2. Extract structured signals with assertion, severity, and source-note evidence.
  3. Aggregate distinct symptom days and wearable-style measurements in rolling windows.
  4. Save an immutable report snapshot with its source-note references.

Evaluation & evidence

The repository includes a curated synthetic extraction evaluator and unit/database integration tests. Results on examples used to develop the rules are not evidence of clinical generalization.

Scope & limitations

An educational project for synthetic data only. It does not diagnose, recommend treatment, establish causality, or perform emergency triage.

Inspect the details

Discuss this project