Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ENGAGE-HF

Build and Test Deployment Codecov REUSE status License: MIT

ENGAGE-HF is the iOS app of a heart failure home-monitoring study. Participants take weight and blood pressure readings on Bluetooth Low Energy devices; the app records them, syncs them to the study backend, and surfaces the medication recommendations the backend derives from recent vitals trends and KCCQ-12 survey responses.

Features

home-screen-less-crowded heart-health-weight-graph-overview medications-expanded
Home Heart Health Medications
education-expanded symptom-survey bluetooth-measurement
Education Symptom Survey Bluetooth
  • Home shows messages generated on the backend — reminders, survey prompts, and pointers to new recommendations — next to the most recent vitals.
  • Heart Health charts weight, heart rate, blood pressure, and symptom score trends with Swift Charts and lets participants review, add, and delete individual measurements.
  • Medications presents the medication recommendations the backend algorithm derives from vitals and survey responses.
  • Education offers videos about the app, the study, and common heart failure medications.
  • Symptom Survey collects the KCCQ-12 questionnaire, defined as an HL7 FHIR Questionnaire and stored in Firestore together with its responses.
  • Bluetooth pairs the weight scale and blood pressure cuff once; afterwards, measurements appear in the app the moment they are taken.

The app is server-driven: messages, recommendations, questionnaires, and educational content all originate on a Firebase backend, maintained in ENGAGE-HF-Firebase and included here as a submodule.

Build and Run the Application

Clone the repository together with its backend submodule:

git clone --recurse-submodules git@github.com:SchmiedmayerLab/ENGAGE-HF-iOS.git

During development the app talks to the Firebase Local Emulator Suite. Start a seeded instance with the Firebase CLI and Node.js:

cd ENGAGE-HF-Firebase && npm run prepare && npm run serve:seeded

or use the docker-based setup:

cd ENGAGE-HF-Firebase && docker-compose up

The emulator UI at http://127.0.0.1:4000/firestore/ shows the seeded data. A seeded emulator is also required to run the UI test suite. The ENGAGE-HF-Firebase repository documents the backend in more detail.

Open ENGAGEHF.xcodeproj in Xcode and run the app; simulator builds connect to the local emulator automatically.

Contributing

Contributions to this project are welcome. Please make sure to read the contribution guidelines and the contributor covenant code of conduct first. You can find a list of contributors in the CONTRIBUTORS.md file.

License

This project is licensed under the MIT License. See LICENSE.md for more information.

Citation

If you use this software, please cite it using the metadata in CITATION.cff, which GitHub surfaces through the Cite this repository button.

Our Research

For more information, visit the Schmiedmayer Lab GitHub organization.

Schmiedmayer Lab Schmiedmayer Lab

About

iOS application for the ENGAGE-HF heart failure study, recording Bluetooth vitals and generating medication recommendations.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

8 stars

Watchers

7 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages