An application to help families understand and manage a child's complex medical situation: one place for the medical timeline, plain-language explanations, symptom and treatment tracking, care coordination across specialists, and controlled sharing of medical records.
Spectrum is local-first: the family's data lives on their own devices, and nothing leaves the device unless the family explicitly shares it.
spectrum/
├── mobile/ Kotlin Multiplatform app (Android + iOS, Compose Multiplatform)
├── backend/ Ktor (Kotlin/JVM) API — sync & sharing services, optional for local-first use
├── web/ React + TypeScript web app (Vite)
└── docs/ Architecture, privacy posture, PBC roadmap
- Unified medical timeline — visits, labs, diagnoses, medication changes, flares, illnesses, regressions, and milestones in one chronological view spanning the child's whole history.
- Joint multi-condition tracking — conditions (e.g. ASD, PANS, OCD) are tags over one observation stream, not silos: log once, tag to any number of conditions (or none), correlate across all of them.
- Intervention history — everything tried, conventional and alternative (prescriptions, supplements, homeopathy, procedures, devices, therapies, diets), with the family's "did it help?" verdict. The report every new provider asks for.
- Capture inbox — get evidence in with zero friction: bottle photos, videos of episodes, harvested emails, portal PDFs, spoken notes. Organize later.
- Voice journaling — talk through the day; the app proposes structured entries to confirm.
- Plain-language explainer — translate diagnoses, results, and medical jargon into understandable language with credible sources.
- Care coordination — appointment prep, questions for each specialist, tracking what each provider said.
- Record sharing — explicit, deliberate export/share of records (PDF / FHIR bundle) with providers, co-parents, and caregivers.
Data models are FHIR-aligned (Patient, Encounter, Observation, DocumentReference, MedicationStatement) to ease import from patient portals and export to providers.
cd mobile
./gradlew :app:assembleDebugcd mobile
./build-ios-framework.sh # builds the shared XCFramework
# then open/create the Xcode project in iosApp/ (see iosApp/README.md)cd backend
./gradlew run # starts Ktor on http://localhost:8080cd web
npm install
npm run dev # Vite dev server on http://localhost:5173Personal/family use first; the intent is to generalize for other families
under a public benefit corporation. See docs/PBC-ROADMAP.md and
docs/PRIVACY.md.