Guide

Privacy-preserving Telemedicine Sample App

Open-source on-prem telemedicine sample app. On-device video segmentation and blur before transmission. HIPAA, GDPR, and EHDS-aware reference architecture.

Privacy-preserving telemedicine sample app

fhir_ips_export is an open-source Flutter package that generates an International Patient Summary (IPS) PDF directly from a list of FHIR R4 resources. Two components do the work. FhirIpsBuilder constructs the IPS Composition from the resources. FhirIpsPdfRenderer turns that Composition into a polished, customisable PDF. MIT-licensed, built and maintained by Life Value. Powers the medical-passport feature in HealthWallet.me.

What it does

The International Patient Summary (IPS) is the HL7-defined, EU-EHDS-aligned, globally portable summary of a patient's most critical clinical information. The IPS Composition is the FHIR resource that holds it. Allergies, medications, problems, immunisations, procedures, devices, results, vitals, history, and care plans. Until now, no clean Flutter package exists that takes a Bundle of FHIR resources and produces an IPS PDF a patient can hand to any clinician in any country.

fhir_ips_export solves that. The package is split into two layers so each one can be replaced or extended independently.

Component 1: FhirIpsBuilder

  • Creates a FHIR IPS Composition from a list of FHIR R4 resources.
  • Customisable sections. Developers specify the order and inclusion of IPS sections via the sectionOrder parameter.
  • Convenience method. buildFromRawResources accepts raw JSON resources (the dump of a FHIR Bundle.entry array) and constructs the Composition from input to output.
  • Validates against the HL7 IPS Implementation Guide so the output passes downstream IPS-aware tooling.

Component 2: FhirIpsPdfRenderer

  • Renders an IpsData object (which holds the Composition plus supporting resources) into a polished PDF.
  • Custom branding. Accepts an SVG string for a logo in the PDF header. Your clinic, hospital, employer, or HealthWallet brand.
  • Section layout follows the HL7 IPS specification by default, with overrides if you need a different visual rhythm.
  • Patient-readable typography. Serif body, sans headers, generous line height. Designed to be read by a tired clinician at 3am with bad lighting.

Supported IPS sections (all 14)

The package matches the HL7 IPS Implementation Guide section coverage. Apple Health, Google Health Connect, Epic MyChart, and Oracle Cerner HealthLife all export to FHIR R4. Feed those exports into the package and you have an IPS PDF in a few seconds, generated on the patient's device, never transmitted anywhere.

#Section
1Medication Summary
2Allergies and Intolerances
3Problem List
4Immunizations
5History of Procedures
6Medical Devices
7Diagnostic Results
8Vital Signs
9History of Illness
10Pregnancy History
11Social History
12Plan of Care
13Functional Status
14Advance Directives

Use cases

  • Patient apps producing a portable IPS PDF for travel, emergency rooms, and second opinions. HealthWallet.me and similar patient-held EHRs.
  • Hospital discharge tooling that gives the patient a paper or PDF summary to take home.
  • Cross-border EU patient-summary apps under MyHealth@EU and EHDS once the rollout completes through 2027.
  • Employer health programmes that summarise benefit-funded test results in a single PDF.
  • Care-team handover apps (primary care to specialist) that bundle the IPS into a shareable artefact.

Compliance posture

Data location during PDF generationOn-device only. The Bundle is parsed in-memory. Nothing leaves the device unless you choose to share the resulting PDF.
PHI handlingThe package operates on PHI by definition. It processes the patient's medical history. Wrap it in a HIPAA-compliant deployment. The calling app must be a Business Associate or covered entity, with the usual safeguards.
FHIR conformanceImplementation Guide. HL7 International Patient Summary R4. The output Composition validates against the canonical IPS profile.
Cures Act / TEFCA alignmentThe package operates on the same FHIR R4 resources that Cures-Act-compliant EHRs (Epic, Oracle Cerner, MEDITECH Expanse, athenaOne) expose via patient-access APIs.
GDPR Article 9Treats health data as special-category. No telemetry. No external network calls during PDF generation.

Stack and requirements

LanguagesDart (Flutter / Dart-native)
Distributionpub.dev/packages/fhir_ips_export
Sourcegithub.com/LifeValue/fhir_ips_export
LicenceMIT
MaintainerLife Value (Tech Stack App SRL)
PowersHealthWallet.me. See the case study for the integration pattern.

Frequently asked questions

What is the International Patient Summary (IPS)?

The IPS is a HL7-standardised, globally portable summary of a patient's most critical clinical information. Allergies, medications, problems, immunisations, procedures, devices, results, vitals, history, plans, and directives. It is designed to be readable in any country, by any clinician, in any language, even without access to the originating health system.

Do I need to be FHIR-fluent to use this?

If you can feed the package a list of FHIR R4 resources (typically the entries of a FHIR Bundle), the package handles the rest. The buildFromRawResources convenience method even accepts raw JSON, so a Dart developer with no prior FHIR experience can ship the first integration in an afternoon.

Can I customise the PDF visually?

Yes. The renderer accepts a custom logo (as SVG), section ordering, and optional language-tag overrides. For deeper customisation (colours, typography, table layouts), the renderer is designed to be subclassed. Extend FhirIpsPdfRenderer and override the per-section render methods.

Is the PDF generated on-device?

Yes. The package does not call any network. It runs entirely on the device. The resulting PDF can be saved, shared via system share-sheet, AirDropped, uploaded to a cloud drive, or printed.

Will this work with Apple Health or Google Health Connect exports?

Yes. Both platforms now export to FHIR R4. Feed the export into the builder and out comes an IPS Composition. Different export sources surface different sections. Apple Health typically gives vitals, allergies, conditions, and medications. Google Health Connect adds activity and labs.

Is this part of HealthWallet.me?

It is the engine behind HealthWallet.me's medical-passport feature. The PDF a HealthWallet user adds to Apple Wallet or Google Wallet for emergency-room sharing. We open-sourced the package separately because the use case is broader than HealthWallet.

Get the package and a sample IPS Bundle

Submit your name and email through the form at the bottom of this page. We send you the pub.dev link, the GitHub repo with the example app, a sample FHIR Bundle (anonymised, IPS-conformant) so you can test without writing your own resources first, and a short setup guide PDF.

Last reviewed: 30 May 2026.

Download your resource today
By granted access you agree to with our Privacy Policy.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.