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

2014 Internship Project

This project is being considered as a potential project for 2014 Internships. If you are a potential intern and are interested in working on this project, please discuss it in detail with the mentor(s) listed here before submitting your internship proposal.

Primary mentor

Wyclif Luyima

Backup mentor

Darius Jazayeri

Assigned to

Ujjwal Arora


Reference Application is a state of the art implementation of OpenMRS, which may serve as a solid base for new implementations. It is designed using the latest UI 2.x and App Framework and is related to RA-61 - Getting issue details... STATUS , which make it easy to add new functionality as small apps in a similar fashion to mobile applications. However, lots of the administrative tasks e.g concept, form, Setting (formerly Global Property from platform 1.8 downwards), roles, locations and privilege management are still being done from the legacy user interface which is accessed via the Advanced Administration App, these tasks need to be ported to the reference application too.


This project aims to add several high priority administrative tasks to the Reference Application.

Project Champions

Skills Needed

  • Decent Java coding skills
  • Basic Javascript and SQL skills
  • A keen interest in developing good UIs


  • Add User Account Manager tool  see
  • Manage Locations (including tagging those location, adding and editing location attributes)
  • Add advanced settings management tool(s), add custom pages for managing specific Settings (formerly Global Properties from platform 1.8 downwards) (e.g. all the security.* GPs together nicely in a Security Settings page)

Therefore, this project would involve:

  •           User management app
  •            Location management app
  •            Advanced Settings
  •            Records management app (extra credit)

Extra Credit

  • Add a new page that lets you see all data associated with a patient/visit/encounter record (including voided data) in some ugly table format, mainly for an administrator to be able to unvoid data.


Hierarchy of various tools and apps in Administration module

Administration Tools will be built on UI Framework, which form the base of reference application. The module will have standard module dependency on “uiframework” module. The UI Framework is built on Spring MVC and implements Groovy templates for views. So, the views will be provided by .gsp files. Existing fragments of UI 2.0 will be used and new fragments will be created wherever required. 




Communication Plan

Weekly meetings - ~10 am EST every Wednesday

Emails, IRC


Project Timeline

  • 21 April – 15 May : Understand App Framework and UI 2.x deeply, learn required technologies, get to know the mentors, prepare working on the project
  • 19 May – 26 May : Will not be available due to the final exams at university
  • 26 May – 22 June : Create module, implement User Manager
  • 23 June – 27 June : Midterm evaluation
  • 28 June – 15 July : Implement Location manager
  • 16 July – 1 Aug : Implement Advanced Settings + Record Manager (possibly)
  • 2 Aug – 7 Aug : Finalize UI
  • 8 Aug – 18 Aug Write tests, prepare documentation
  • 19 Aug – 22 Aug : Final evaluation

UI Mockups

1.       1. Administration App Homepage


2. User manager Dashboard


3. findUser App


4. addUser App


5. Location manager Dashboard


6. locationTags App


7. Advanced Settings Tool


8. Security Settings tool


9. Record Manager tool




  • No labels


  1. Hi, I would like to know about this more. (smile)

  2. I want to work on this project. I would like to know about this more. Kindly provide the slot in which you are available in IRC. (smile)

  3. Hello Wyclif Luyima. This project will indeed make OpenMRS 2.0 more user friendly, since reaching out to concepts/encounters from reference Application (via advanced administration) is a long loop!

    I was wondering which all administrative tasks we plan to add to the reference application for this summer.

    Also were can I find the code base of OpenMRS 2.0.


  4. I will update the project's page once we have select them

  5. Hi Wyclif Luyima,

    I'm working on resources provided, I've been creating apps and pages in the new UI framework. I have also created a sample Admin Page in 2.0 UI. I've got an idea about how to approach the objectives.

    I would like to know for Manage locations you have mentioned to include tagging those locations. Does this mean we should have a map widget or tool(using Google API) similar to Atlas module's markers to let them tag it or is it something different?

  6. It just means the user should be able to manage locations tags,  add or remove tags from locations just like in they do on the location form in the legacy web app

  7. Thank you  Wyclif Luyima for the information.

  8. Hi Wyclif Luyima

    I couldn't get 'un-voiding void data' in the extra credit point. Could you elaborate it please ?

    1. In OpenMRS, voiding data is a soft delete of data, unvoiding is the act of undoing the soft delete