GSoC 2017 - Add-On Index Enhancements | Final Presentation

Add Ons Enhancements

Primary mentor : @darius Backup mentor : @mseaton
Student: @reubenv Project wiki: Link


This project aims at making certain changes to the existing OpenMRS Add Ons infrastructure thereby making it fit as a complete replacement for the existing OpenMRS modulus. The main motive behind this project is to be able to completely retire OpenMRS modulus whose codebase has become tough to maintain. OpenMRS Add Ons also supports OWA’s which is a vital feature that Modulus lacked. The developer is now free to host his module in any of the supported hosting sites while Add Ons does the job of adding it to the OpenMRS module index. Add Ons also gives the freedom of choice of hosting location in hands of the module developer. Add Ons is built on a light framework and hence is hopefully easier to maintain as compared to Modulus.


  • (Front-end) Allow a user to find add-ons that are compatible with their particular version of OpenMRS
  • (Backend) Support for indexing Modules and OWAs that are released as GitHub Releases
  • (Front-end) Show a list of most-active or most-downloaded modules
  • (Backend) Add new Rest end points for getting module by its Package Name and also add the Package Id as metadata to the details of a module
  • (Backend) Improve Search algorithm used
  • (Front-end) Improved utility of tags in add-ons
  • Ensure smooth migration from using as the primary data source to Bintray
  • Ensure Add-Ons is live by the end of GSoC period

Final Video Presentation

GSoC Contributions

Link to contributions

Other Resources

Project Documentation: Talk Discussion: Blogs: Medium blog


I must admit that this has been by far one of my most productive summers yet. I loved every moment of working for this organisation. There have been so many nights, I was up all night implementing features, not because I was forced to but because I was enjoying it. I would like to especially thank @darius for his immense support, help and patience. He has been patient enought to review all my silly mistakes and poor coding habits. He is a person who clearly stands by this quote : “The finest steel has to go through the hottest fire”. He ensured that I fix each and every minute detail in my PRs so that I won’t commit those silly mistakes again. I must admit that my coding style and knowledge has surely improved greatly. I also wish to thank all of the other wonderful members for helping me get involved in this community.

Though GSoC is coming to an end, my contributions to this community will continue for a long time. So don’t miss me just yet :wink:

How can the Program be improved ? Honestly can’t come up with anything :sweat_smile:


Thanks for all your hard work @reubenv! You handled my demanding pull request comments with grace. :slight_smile:

Looking forward to continuing the work on this project.

1 Like

@darius It has been an absolute pleasure working with you on this project and yes we shall continue to maintain and work on this project .

Thank you again for taking time off and helping me learn so much! :slight_smile:

Thank you for your contributions @reubenv :). Keep up your good work.

1 Like

It has been a pleasure @harsha89. Thank you for taking time off and ensuring that Gsoc goes well without any hiccups :slight_smile:

1 Like