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
Secondary Mentor
Assigned to


OpenMRS is a medical record system that has previously allowed the uploading and visualisation of patient conditions through diagrams. This feature has been critical in helping doctors better explain patient conditions to their patients. However, the module lacked certain essential functionalities that could improve the user experience. Therefore, this project aims to improve the diagramming feature in OpenMRS by allowing the upload of any diagram as an image, annotation of certain areas of the diagram with different shapes, saving and retrieving these diagrams, and additionally downloading them as an image with the edited annotations.


The project has two parts, essential and desirable objectives. The essential objectives aim to provide the basic functionalities for uploading and editing diagrams while the desirable objectives enhance the user experience by adding more features.

Essential Objectives:

  • Allow users to upload any diagram as an image to the module
  • Enable users to annotate certain areas of the diagram with different shapes such as circles, squares, and single points, etc..
  • Allow users to save the annotated diagrams for future reference
  • Enable users to retrieve diagrams from a list of already saved ones

Desirable Objectives:

  • Allow users to draw free shapes on the diagram and annotate them with a description text
  • Enable users to download the diagrams as images with the edited annotations, allowing for easy sharing and printing.

The improved diagramming feature in OpenMRS will make it easier for doctors to communicate patient conditions to their patients, leading to better health outcomes. This project will require proficiency in programming fundamentals, OpenMRS 3 microfrontend architecture, Single Page Application, OpenMRS API.

Tech Stack

  • React
  • Typescript
  • Java
  • SQL
  • No labels