Building an Offline-Capable Android Application for LMICs Integrated with Enhanced OpenMRS 3.0

 

Primary mentors

@José Francisco @Frédéric Deniger

Assigned to

@parthfloyd

Abstract

The aim is to develop an Android application optimized for LMIC healthcare settings, utilizing Google's Open Health Stack for offline functionality. The application will be designed to integrate seamlessly with the enhanced FHIR module of OpenMRS 3.0. This integration will enable efficient data management with capabilities for offline data collection, and two-way synchronization with OpenMRS 3.0 once connectivity is available, improving healthcare delivery in resource-limited settings.

Required Skills

  • Excellent proficiency in Kotlin programming.

  • Strong understanding of FHIR technologies.

  • Familiarity and experience with working on FHIR, Google’s Open Health Stack & OpenMRS modules

Project Rating and Length

Advanced

350 hours

Objectives

Main feature

The Android application will feature the ability to connect to an OpenMRS Server, allowing end-users to initially download a list of patients. This enables them to modify patient records and complete forms even when offline. Subsequently, users can synchronize these modifications with the OpenMRS Server once connectivity is restored.

Primary Features

  1. Encrypted FHIR Database: Implementation of encryption for the FHIR Database on Android to safeguard patient data.

  2. Seamless Extensibility: Effortless integration for other organizations, facilitating white-label application functionality.

  3. Automated Docker-based Installation: Fully documented and automated installation process using Docker for OpenMRS/Keycloak setup.

  4. Synchronization FHIR Resources: Download FHIR resources (Questionnaire, Patient, Encounters) from server & store locally

  5. Patient Registration: Register patient offline & ability to sync resource to server.

  6. Dynamic Patient Identifier Type: Ability to fetch available Patient IdentifierTypes from the server & select for registered patients.

Weekly Blog Posts

Week

Blog Post

week 0

https://medium.com/@panchalparth_91743/gsoc-2024-openmrs-community-bonding-period-ba5be89f4986

week 01

https://medium.com/@panchalparth_91743/gsoc-week-1-updates-df5000a5b69a

week 02

https://medium.com/@panchalparth_91743/gsoc-2024-week-2-integrating-locations-to-fhir-android-application-f300ef3b1622

week 03

https://medium.com/@panchalparth_91743/gsoc-2024-week-3-enhancing-location-integration-and-patient-sync-01c2a921435c

week 04

https://medium.com/@panchalparth_91743/google-summer-of-code-2024-week-4-update-9ef7a61feb03

week 05

https://medium.com/@panchalparth_91743/gsoc-2024-openmrs-week-5-patient-creation-synced-resources-47d7b16516d5

week 06

https://medium.com/@panchalparth_91743/gsoc-2024-openmrs-week-6-dynamic-patient-identifier-edit-questionnaire-77f0df4bbf01

week 07

https://medium.com/@panchalparth_91743/gsoc-2024-openmrs-week-6-multiple-dynamic-patient-identifier-room-database-4e7af2ed24b2

week 08

https://medium.com/@panchalparth_91743/gsoc-2024-openmrs-week-8-refined-multiple-dynamic-patient-identifier-integrated-required-5fb337a2f5fd

week 09

https://medium.com/@panchalparth_91743/gsoc-week-9-update-diving-into-splash-screens-and-testing-with-openmrs-icrc-102a5752988c

week 10

https://medium.com/@panchalparth_91743/gsoc-week-10-update-android-tests-mockito-with-openmrs-icrc-4ad9b0222ca2

week 11

https://medium.com/@panchalparth_91743/gsoc-2024-week-11-making-progress-with-ui-designs-openmrs-icrc-04675928589f

week 12

https://medium.com/@panchalparth_91743/gsoc-week-12-wrapping-up-an-amazing-journey-with-openmrs-icrc-bb779d9b98ad

Resources

Project Repos