Inspiration

People can collect more health data than ever, yet still struggle to answer three practical questions: What matters now? What small action fits today? What should I bring to my next care conversation? Existing dashboards often mix medical records and general wellness into one fixed hierarchy. We wanted one user-owned record that could project two different experiences, adapt to the person's stated priorities, preserve provenance, and support action without pretending to diagnose or replace a clinician.

What it does

Syntaur Health turns one synthetic, user-controlled record into two purposeful views. Health brings measurements, labs, goals, source details, record controls, and Visit Prep forward. Wellness uses the same record for meals, movement, sleep, recovery, and sustainable routines without forcing clinical workflow.

Charts preserve gaps and reveal exact values, dates, and sources on hover, keyboard focus, or touch. Users can resolve duplicates, remove or correct data, suppress re-import, and undo. Every change recomputes charts, Avery, plans, and Visit Prep from the same normalized record so stale output does not survive.

Avery is a bounded conversational guide. A person can describe food budget, preferences, time, available exercise equipment, and limitations, review what Avery understood, and confirm a plan change. Deterministic Rust owns facts, goals, allowed actions, and all writes. Nothing diagnoses, changes medication, or automatically sends information to a clinician.

Visit Prep lets the user choose a question and a few sourced facts, then creates a short editable brief with relevant date ranges and sample counts. The user controls every line and may copy it locally for a real appointment.

All identities and health values are synthetic. Apple Health, Health Connect, FHIR, lab, cuff, and scale examples are imports, sandboxes, or replays, not live connections.

How we built it with Codex and GPT-5.6

I set the product direction, clinical boundaries, and design decisions. During Build Week, GPT-5.6 ran inside Codex as the implementation and review model. It translated product critiques into typed Rust invariants and failing tests, built the normalized record and constrained planning flow, and drove repeated Chromium screenshot and interaction checks for responsive layout, chart pixels, overlap, record recomputation, stale output, and browser errors.

The judge path is a standalone local Rust application using Axum, Tokio, Maud, Serde, Chrono, Quick XML, and embedded SQLite. It is deterministic and requires no API key or default model call. At application commit a52c5ea, 127 Rust tests, cargo fmt, strict Clippy, a locked offline release build, eight-scene browser capture, and zero-browser-error checks passed. Changes through repository head f2cffdd were documentation-only.

Challenges and lessons

The hardest problem was coherence after a record change. Removing one reading must update the chart, coach, plan, and visit brief together while preserving Undo and source history. A single normalized record with synchronous, versioned recomputation solved that problem.

We also learned that Health and Wellness need distinct language and priorities without becoming separate identities, and that an AI coach is more credible when its facts, memory, and actions stay visible, consented, and reversible.

What's next

This contest build deliberately stops before real-user data. A production path would require authentication and authorization, encrypted storage, audited consent/deletion/retention, tenant isolation, accessibility and clinical review, and validated platform/device adapters. Live integrations would be phased and never implied by this synthetic demonstration.

Built With

Share this project:

Updates