GSOD 19 :- Developing User-Friendly Github Documentation for REST API final evaluation

Hi all, taking some inspiration from @ayesh I also made my final project report and submitted it.

Develop user-friendly documentation for the OpenMRS rest API

Primary Mentor : Burke Mamlin .

Writer : Mohit Kumar .

Work product :

Documentation source :

openmrs/openmrs-contrib-rest-api-docs []

About OpenMRS

OpenMRS is a software platform and a reference application that enables the design of a customized medical records system with no programming knowledge (although medical and systems analysis knowledge is required). It is a common platform upon which medical informatics efforts in developing countries can be built. The system is based on a conceptual database structure that is not dependent on the actual types of medical information required to be collected or on particular data collection forms and so can be customized for different uses.

OpenMRS is now in use around the world (see the OpenMRS Atlas), including South Africa, Kenya, Rwanda, Lesotho, Zimbabwe, Mozambique, Uganda, Tanzania, Haiti, India, China, United States, Pakistan, the Philippines, and many other places. This work is supported in part by many organizations including international and government aid groups, NGOs, as well as for-profit and nonprofit corporations.

OpenMRS has a huge community and it is growing day by developers, technical writers, software testers and a lot of people using OpenMRS software.The main influence is to provide them high-level documentation on API.

About the Project

The main objective of the project was to document a user-friendly REST API documentation which is interactive and easy to read and understand. The current REST API documentation which the OpenMRS community uses is the swagger documentation which is well documented, but it is only good for the existing developers and the people who are in the community for quite a while now. The new documentation is designed and documented in a way such that it easily understood by both new and existing developers, apart from developers any non-technical person can read and understand the API. The major improvements made in the documentation compared to existing one are :

  1. A real-life use-case of the API which is used, along with some conceptual definition which tells how a particular resource is used.
  2. Example request of the API.
  3. Easily understood by non-technical and technical people.

The goal of the project

  • The goal of the project was to document almost all of the resources used in the OpenMRS REST API.
  • Write the purpose of the documentation, a section that explains how to go through the documentation.

My Contributions

Resources :

  • Patient -> {Patient , PatientIdentifierType} -> {Merged, Merged}
  • Person -> {Person, PersonAttributeType} -> {Merged, Merged}
  • User -> {User, Role, Privilege} -> {Merged, Merged, In review}
  • Orders -> {Order, OrderType} -> {Merged, Merged}
  • Observations -> {Obs} -> {Merged}

Overview Documentation :

  • Purpose -> Add the purpose of the documentation as a general information for the documentation -> {In review}

Pull Requests :

Resources in documentation :

Overview of documentation :

Final Output

Future Scope

All the major resources are documented, but there is still room for a few more and in the console section of the slate documentation support for making the request in different programming languages can still be added.

GSoD 2019 : Daily Scrum Updates ! [GSoD 2019 : Daily Scrum Updates !]

GSoD Overview

I personally found GSoD experience to be a very fruitful one, as the OpenMRS community provided me with all the support and help that I needed and I would like to thank my mentors and the community to give me this amazing opportunity.

Season of Docs is a very good initiative taken by google and with an experience like this, I would definitely love to participate in it next year.