US-Core FHIR R4 export is live on the backend: GET /patients/:id/fhir returns a collection Bundle (Patient + Coverage + RelatedPerson + Consent), default-deny patient:fhir-read, and it's downloadable from the registration face-sheet. Inbound FHIR import is live too: the Intake FHIR tab ingests a Patient or Bundle (upload, paste, pull from this EMR, or fetch from a URL) into the staging gate — a human still promotes. Still planned: a dedicated interop console + subscriptions. C-CDA import already lands in Intake.
Standard of work · ISO/IEC 25010 — Meets 8/9 — see note
- 1. Self-identifyingUsability — appropriateness recognizabilityThe page names itself: breadcrumb, title, section, status badge, and a page id.
- 2. Navigable forward & backUsability — operabilityBack/Next step through the product; breadcrumb + active sidebar; browser back works.
- 3. Demo-prefilled — no empty statesUsability — learnabilityEvery form is pre-filled with realistic demo data so the screen is never blank.
- 4. Accessible — AAA, large fonts, big targetsUsability — accessibilityLight mode, 7:1+ contrast, ≥44px controls — built for a 76-year-old physician.
- 5. Clear result feedbackFunctional suitability — appropriateness; Reliability — fault toleranceEvery action maps a Result to a visible success/error message; codes → HTTP status.
- 6. Secure by default + sign-outSecurity — confidentiality & authenticityDefault-deny permissions, practice-scoped data, a sign-out control, no PHI in logs.
- 7. ResponsivePortability / Compatibility — adaptabilityWorks on desktop, tablet, and phone; the sidebar collapses on narrow screens.
- 8. ResilientReliability — availability & recoverability; Performance efficiencyLoading and upstream-down states are handled — never a blank or frozen screen.
- 9. ConsistentMaintainability — modularity & reusabilityOne shell, one set of design tokens, shared components across every page.
FHIR / Interop
US-Core FHIR R4 export is live on the backend: GET /patients/:id/fhir returns a collection Bundle (Patient + Coverage + RelatedPerson + Consent), default-deny patient:fhir-read, and it's downloadable from the registration face-sheet. Inbound FHIR import is live too: the Intake FHIR tab ingests a Patient or Bundle (upload, paste, pull from this EMR, or fetch from a URL) into the staging gate — a human still promotes. Still planned: a dedicated interop console + subscriptions. C-CDA import already lands in Intake.
What this section will include
US-Core FHIR R4 export is live on the backend: GET /patients/:id/fhir returns a collection Bundle (Patient + Coverage + RelatedPerson + Consent), default-deny patient:fhir-read, and it's downloadable from the registration face-sheet. Inbound FHIR import is live too: the Intake FHIR tab ingests a Patient or Bundle (upload, paste, pull from this EMR, or fetch from a URL) into the staging gate — a human still promotes. Still planned: a dedicated interop console + subscriptions. C-CDA import already lands in Intake.
Harvest source: caresync-pro: fhir-center.html
It will be built as a real vertical slice on the same foundation as the live screens — repository behind a port, Result<T,E> returns, default-deny permissions, practice scoping, and (for any imported or AI-suggested clinical data) the staging gate: a human promotes it before it reaches the chart.