Wiki Spaces


Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack


Page tree
Skip to end of metadata
Go to start of metadata

Primary mentor

Fawwaz Yusran

Backup mentor

Chathuranga Muthukuda

Assigned to


The current OpenMRS Android client needs serious performance and other improvements. The goal of the Android client is to provide an alternative to access a hospital's OpenMRS instance by just using the provider's Android devices. See the full Android client guide for more info.

Considering the services offered by a hospital, an Android application can help doctors, patients and other staff a lot with its mobility and ease of use, without them having to start the OpenMRS web app on a desktop computer. This will improve the productivity and efficiency of the hospital workflow.

Skills Needed

Android, Java, Gradle, SQLite

Completed Objectives

  1. Provider Module: Provider Module is a large feature request by the community. More information here: In Progress AC-402 - Getting issue details... STATUS AC-622 - Getting issue details... STATUS
      See PR #603 , and #PR 611

  2. Visual improvements:  Completed
    • Settings screen can be improved . See PR #604 . AC-618 - Getting issue details... STATUS
    • Make application layout more compatible with different screen sizes. See PR #607. AC-620 - Getting issue details... STATUS
    • Added Dark Mode  AC-551 - Getting issue details... STATUS
  3. Performance improvements:   Completed

    • app is lagging in some scenarios ex: when navigating through tabs. investigate the ways of decreasing the response time. See PR #564 . AC-544 - Getting issue details... STATUS
  4. Backend improvements: Completed

    • Replace the old ActiveAndroid framework with Android Room. See AC-470 - Getting issue details... STATUS
    • Migrate to AndroidX. See PR #481
    • Add Kotlin Dependency. See PR #581. AC-602 - Getting issue details... STATUS

Remaining Objectives

  1. Security improvement: 

    • Forgot password option.

Extra Credit

Analytics - 

We need to create a way for the Android app to collect important usage data and report it back to the local server, so that the sysadmin can look at the Analytics. The extra credit will be for making the Analytics viewing system on both the app and the admin panel. Note: We will not use Google Analytics but will develop our own system so that we can have the data in the local openmrs server.