Organization - LibreHealth
Project - Scaling up the mobileHBS/DHIS2 Tracker and Trainer applications
Student - Bhavesh Sharma
In various low/middle-income countries children die in just a few days after their birth due to the inadequate supply of facilities that they require. The important fact is that all of these deaths are Preventable and can be prevented by providing proper knowledge to the mothers of the babies and other people and by providing a proper tracker facility to track the health status of the baby in the early days of his birth.
As a sort of solution MHBS applications are launched which is a set of 4 applications. Out of which I had worked on the mhbs-trainer and mhbs-tracker. Tracker is used for data collection which is built from the dhis2 mobile application and trainer is used to access the resources.
The Goal of this project is to develop the scale-up version of the existing mHBS application, updating the old code base and adding new features, providing a feature to access media resources uploaded on the dhis2 through the trainer app which will be used for the training of the individual.
Librehealth Project Repository
mHBS-Tracker Project https://gitlab.com/librehealth/incubating-projects/mhbs/mHBS-tracker
mHBS-Trainer Project https://gitlab.com/librehealth/incubating-projects/mhbs/mHBS-trainer
My Forked Repository
mHBS-Tracker Project https://gitlab.com/bhavesh3005sharma/mHBS-tracker
mHBS-Trainer Project https://gitlab.com/bhavesh3005sharma/mHBS-trainer
What was done:
During these 10 Weeks, I have:
- Updated mHBS-Tracker repository with latest dhis2 one & made changes required for tracker app.
- Added Media Page, Integrated API Calls to fetch and play all type of media files (educational resources) uploaded in dhis2.
- Added offline support & sync facility.
- Build a system to track app usage.
- Merged the upstream changes that have more than 6K unmerged commits.
- Modified the final merged code to have features and look like the mHBS app.
- App Name and Logo has been changed.
- UI Improvements.
- Added External other apps of mHBS to the app drawer.
- Added functionality to open other mHBS apps.
- Set up CI/CD to automatically build the app and check for errors.
- Fixed Some of the build errors.
- Added Media Page in trainer app and uploaded some educational & testing resources on dhis2.
- Integrated API Calls to fetch media resources into trainer app.
- Integrated cordova-file-opener2 plugin and make all types of media files accessible through the app.
- Integrated Gitlab CI Pipeline to automatically build the apk.
- Related Issues : #190 #112 #77 #39 #21
- Implemented File sync feature and added appropriate synced icon for stages.
- Implemented sqlite-database and cordova file plugin to storage purpose.
- Added full offline support for synced media files.
- Sync facility is added for both the list of documents and for document media files as well.
- Related Issues : #69
- App usages are being stored locally in the SQL database ( like Page visits, Time spent, etc.).
- After crossing the min. threshold limit app usage will get synced with the dhis2 user’s datastore and shifted to dhis2.
- Overall usage of each page (approx 15+ pages) can be tracked remotely over dhis2 and can be used for analytical purposes.
- Related Issues : #36 #120
- Added Thumbnail and video duration in media files.
- Added filtering options for media files to sort them in categories by their types.
- Improve UI, added button.
- Related Issues : #195
- Exported tracker specific metadata from dhis2.
- Checked the metadata by importing it on Demo Dhis2 Servers as well.
- Related Issues : #22
- Shared login credentials of tracker app with the trainer app.
- There is a single login in the tracker app and all the other connected apps will use that credentials for further process, users needs not to logged in again and again in all mhbs apps.
- Related Issues : #16.
Other Supporting MRs & Tested/Fixed Issues
- MR-201 | Issue-196 - Updated cordova secure storage plugin.
- Issue-14 - View data completion form.
- Issue-13 - Create
secondsdata element for OSCE B.
- Issue-10 - Tested all the features of Module_1_mHBS_General_User_Guide_JANUARY_30_2019_FINAL.pdf in the new tracker app.
- Issue-11 - Need to change frequency of tracker forms and HBB survey.
- Issue-12 - Need to modify HBB infrastructure survey.
- MR-14 | Issue-4 - Fixed mHBS logo.
- MR-15 - Fixed mHBS tracker app CI-Pipeline.
- MR-197 | Issue-193 - Removed embedded - Keeping baby warm video.
What after GSoC
I will continue to contribute to LibreHealth for this project. I will assist the new members who are willing to contribute for this project. I will actively take part in the discussions and I will contribute by creating, Solving issues and adding improvements to this app. Currently the on-campus Intern hiring process is also going on, have to focus on that as well.
Thanks to my mentors
I would like to thank my mentors, Sherri Bucher, Saptarshi Purkayastha, Robby O Connor for being so nice and helpful. I have learnt a lot in the past 2-3 months and it has been a great experience to be a part of this wonderful organisation.
I am very much thankful to Saptarshi Purkayastha, I am very grateful to you, this was all possible because of your encouragement, advice, and support that you’ve given me. You have been incredibly generous with your time and energy, Your words of encouragement encouraged me & helped me in sharpening my skills.
|Home screen||Media Page showing all media files tab||Media Page showing PDF media files tab|
|Media Page showing video media files tab with thumbnail & video duration||Media Page showing other media files tab|
|Splash Screen||Configuration Syncing Page||Home screen showing all Programs and Data Sets|
|Home screen showing navigation drawer||Tracker Enrollments Page||OSCE-B Form|
The project chat channel is on Librehealth Forums, my entire communication with my mentors can be seen there.
Blog posts during GSoC
For better understanding of implementation details & other works done by me please check my Weekly Bogs.