Google Summer of Code with OpenMRS — Final Report

Project — Enhancements of Attachments Module.

Primary mentor : @mksd ( Dimitri R)
Backup mentor : Muhammad Ahmed Memon , chine zoheir
Student: Ridmal Madushanka
Project wiki: Link


OpenMRS is an open source configurable software platform that provides health facilities with the ability to customize their electronic medical records (EMR) system with no programming knowledge. The Attachments Open-MRS add-on module (in short: ‘Attachments’) enables to view and manage file attachments. With it users (with the appropriate privileges) can upload , view and delete attachments associate with a patient record. Attachments both integrates on OpenMRS Clinician Facing Patient dashboard and Visits & Encounters Patient dashboard.


Main objective of this GSOC program is to enhance Attachments to qualify it for a 2.0 release. So it consist of two main objectives.

  1. Attachments to become 100% RESTful.

See JIRA tickets : ATT-24 , ATT-27

  • Design and implement a reusable Java API. Essentially by implementing the new Attachments Service that helps to fetch attachments based on a set of query parameters.

2. Segregate Attachment UI to Open Web APP ( research part ).

My mentor and I did discuss the possible approaches to do this, but we decided that there was not enough time to finalise such a large piece of UI code migration and refactoring.

GSoC Contributions:

The descriptions of all contributions can be found in the below blog posts. Flowing Commits are my contributions to Attachments in this GSOC program.

Other Resources:

Mid-Term Presentation :

Weekly Blog posts :

OpenMRS talk thread :

All the things i have been working on from the beginning of the GSOC program are recorded in the OpenMRS Talk threads below.

Further Works:

The segregate of Attachments UI to an Open Web App has not yet started. This will require more design and development time and I hope to continue this work beyond the GSOC program.


Actually this is my first time with GSOC and it was really awesome experience to me. Able to work with top level developers and gain more knowledge with the help of them. The most amazing thing in the GSOC program is that we can get more things we didn’t expected. For example Attachment module is used test driven development for its implementations and because of that i am able to learn and practice test driven development strategies first time.

And i loved every moment i worked in this GSOC program. Most specially i would like to thanks @mksd who help me a lot in this time period. He gave me lot of knowledge , motivate me , Kind to me and always correct my mistakes. He work with very patient and he always allow me to talk anytime to him even he is very busy with other works.I am very glad to meet him in this GSOC program. Also i would like to thank all the others including my backup mentors who helped me in this time period.And I wish to continue my work with this awesome Organization and “ Write code to Save lives”. :-)

Software engineer at 99x Technology