Skip to content

Latest commit

 

History

History
259 lines (195 loc) · 23.4 KB

ProjectReport.md

File metadata and controls

259 lines (195 loc) · 23.4 KB

Extending Slate Based OpenMRS RestAPI Documentation

Google Season of Docs, 2020 @OpenMRS

Name: Saurabh Kumar

Email: 2017232@iiitdmj.ac.in

Work Done

  • Some PRs might be in multiple weeks due to their status might be under-review in some week and merged in the other !!
  • Community Thread for discussion on the project on OpenMRS Talk here.
  • All my merged work is hosted here live .

Community Bonding Phase

Order Description Link to PR Status
1 Fixed the build for project PR 42 Merged
2 Fixed Issues and mistakes for auth.md, Info.md and Contrib.md PR 45 Merged
3 Fixed Issues and mistakes role.md, user.md, privileges.md,
persons.md, person_atttributr_type.md,
patients.md and patient_identifier_type.md
PR 47 Merged
4 Fixed UI Issues in User.md PR 49 Merged
5 Fixed console formatting in Patient.md, patient_identifier.md PR 50 Merged
6 Reviewing Docs Uptill the visits section PR 53 Merged
7 Added Forms section /form endpoint PR 54 Merged
8 Fixing console formatting for whole doc PR 57 Merged
9 Added Missing files to Index PR 58 Merged
10 Added system settings section PR 59 Merged
11 Reviewing last section of Doc PR 60 Merged
12 Added system Information section PR 61 Merged
13 Added Java Codesamples for auth PR 62 Merged
14 Fixed CSS issues for console PR 63 Merged
15 Fixed warning in middleman build PR 64 Closed
16 Added Java examples for Info.md PR 67 Merged
17 Updating gemfile dependencies PR 69 Merged
18 Updating lib package PR 70 Merged
19 Slate upgrade v2.7.0 PR 71 Merged
20 Fixed Info.md formatting Issues PR 72 Merged
21 Fixed the infused console error PR 73 Merged
22 Added annotations for auth.md PR 74 Merged
23 Added Java samples for systemsettings section PR 75 Merged
24 Added Java samples for systeminformation section PR 76 Merged
25 Added Java samples for user section PR 77 Merged

Week 1

Order Description Link to PR Status
1 Updating the getting started Guide PR 78 Merged
2 Documenting Authentication Resource PR 79 Merged
3 Documenting concept class subresource PR 80 Merged
4 Documenting concept Source subresource PR 81 Draft
5 Documenting concept Attribute subresource PR 82 Draft

Week 2

Order Description Link to PR Status
1 Documenting concept Source subresource PR 81 Merged
2 Documenting concept Attribute subresource PR 82 Under-Review
3 Documenting concept datatype subresource PR 83 Merged
4 Documenting concept map type subresource PR 84 Merged
5 Documenting concept reference term type subresource PR 85 Draft

Week 3

Order Description Link to PR Status
1 Documenting concept Attribute subresource PR 82 Merged
2 Documenting concept reference term type subresource PR 85 Merged
3 Documenting concept resource PR 86 Draft
4 Documenting concept resource mapping section PR 87 Draft
5 Documenting concept resource name section PR 88 Draft
6 Documenting concept description section PR 89 Under-Review

Week 4

Order Description Link to PR Status
1 Documenting concept resource PR 86 Under-Review
2 Documenting concept resource mapping section PR 87 Under-Review
3 Documenting concept resource name section PR 88 Under-Review
4 Documenting concept description section PR 89 Merged
5 Documenting concept resource attribute section PR 90 Under-Review
6 Documenting Observation resource PR 91 Draft

Week 5

Order Description Link to PR Status
1 Documenting concept resource PR 86 Merged
2 Documenting concept resource mapping section PR 87 Merged
3 Documenting concept resource name section PR 88 Merged
4 Documenting concept resource attribute section PR 90 Merged
5 Documenting Observation resource PR 91 Merged
6 Fixing UI Bugs uptill PR 92 Under-Review
7 Documenting System Setting resource PR 93 Under-Review
8 Documenting System-Information resource PR 94 Under-Review

Week 6

Order Description Link to PR Status
1 Fixing UI Bugs uptill PR 92 Merged
2 Documenting System Setting resource PR 93 Merged
3 Documenting System-Information resource PR 94 Merged
4 Documenting User resource PR 96 Draft
5 Documenting Privileges resource PR 97 Merged
6 Documenting Role resource PR 98 Draft
7 Documenting Person-Attribute type resource PR 99 Merged

Week 7

Order Description Link to PR Status
1 Documenting User resource PR 96 Merged
2 Documenting Role resource PR 98 Merged
3 Documenting Person Attribute type PR 99 Merged
4 Documenting PatientIdentifier Type PR 100 Draft
5 Documenting Person Name Sub-resource PR 101 Merged
6 Documenting Person Address Sub-resource PR 102 Merged
7 Documenting Person Attribute PR 103 Merged
8 Updating uniformly with demo server url PR 104 Closed

Week 8

Order Description Link to PR Status
1 Documenting PatientIdentifier Type PR 100 Merged
2 Added changes according to survey feedback PR 105 Merged
3 Documenting Information PR 106 Merged
4 Documenting Visit Type PR 107 Merged
5 Documenting Visit Attribute PR 108 Merged
6 Documenting PatientIdentifier Section PR 109 Merged
7 Documenting Visit Resource main section PR 110 Under-Review
8 Documenting Visit Resource attribute section PR 111 Under-Review
9 Documenting Patient Resource allergy section PR 112 Under-Review
10 Documenting Person Resource main section PR 113 Under-Review
11 Documenting Patient Resource main section PR 114 Under-Review
12 Documenting Location resource PR 116 Draft
13 Documenting Location Tag resource PR 117 Draft
14 Documenting location Attribute type PR 118 Draft
15 Correcting Base url and header names PR 115 Merged

Week 9

Order Description Link to PR Status
1 Documenting Visit Resource main section PR 110 Merged
2 Documenting Visit Resource attribute section PR 111 Blocker
3 Documenting Patient Resource allergy section PR 112 Merged
4 Documenting Person Resource main section PR 113 Merged
5 Documenting Patient Resource main section PR 114 Merged
6 Documenting Location resource PR 116 Merged
7 Documenting Location Tag resource PR 117 Under-Review
8 Documenting location Attribute type PR 118 Under-Review
9 Documenting Location resource attribute PR 119 Merged
10 Documenting Provider attribute type PR 120 Under-Review
11 Documenting Provider attribute resource PR 122 Under-Review
12 Documenting Patient Resource patient subsection PR 123 Under-Review
13 Documenting Visit resource visit section PR 124 Blocker

Week 10

Order Description Link to PR Status
1 Documenting Location Tag resource PR 117 Merged
2 Documenting location Attribute type PR 118 Merged
3 Documenting Provider attribute type PR 120 Under-Review
4 Documenting Provider attribute resource PR 122 Under-Review
5 Documenting Patient Resource patient subsection PR 123 Merged
6 Documenting Visit resource visit section PR 124 Under-Review
7 Reviewed Docs for UI and section errors PR 125 Under-Review
8 Documenting Encounter role resource PR 126 Under-Review
9 Documenting Encounter type resource PR 127 Under-Review
10 Fixed visit section blocker and completed section PR 128 Under-Review
11 Documenting Encounter resource PR 129 Draft

Week 11

Order Description Link to PR Status
1 Documenting Provider attribute type PR 120 Merged
2 Documenting Provider attribute resource PR 122 Merged
3 Documenting Patient Resource patient subsection PR 123 Merged
4 Documenting Visit resource visit section PR 124 Merged
5 Reviewed Docs for UI and section errors PR 125 Merged
6 Documenting Encounter role resource PR 126 Merged
7 Documenting Encounter type resource PR 127 Merged
8 Fixed visit section blocker and completed section PR 128 Merged
9 Documenting Encounter resource PR 129 Merged
10 Documenting Form Resource main section PR 130 Draft
11 Documenting Field type resource PR 131 Merged
12 Documenting Order type resource PR 132 Merged
13 Documenting the Order section PR 133 Merged
14 Tweaking the examples introduction PR 134 Under-Review

Objectives Completed

  • Got the feedback and fine-Tuned objectives for this project through 2 Documentation surveys here and here.
  • Found out the missing resources and got their documentation merged into the documentation, systemInformation, systemSettings and Form resources and sub-resources.
  • Checked out all the current curl examples make sure they're up to date and fixed some of the documentation and made sure they are not abstract but work well with the demo sever.
  • Added Java & Javascript examples and updated the getting started guide so that getting started with the documentation becomes simple.
  • presented the progress weekly with a talk post with the community and designed and floated 2 surveys to take feedback for my work from the community.
  • All the examples are base server agnostic and plug and play, and checked with the demo-server.
  • Extra credits | updated the slate based documentation tool to its latest release for better usability and bug fixes.

Future Works

  • There needs to be a technical solution to generate most of the content except the description of resources and some static part of the documentation, itself from the javadocs by annotations using some tool like springFox.
  • Adding more resources to the current documentation as the community expects a comprehensive API documentation like the swagger based documentation.
  • Making some instances of resources read-only on the Demo Server, so that the examples work always without any unexpected Issues and problems.

Challenges

  • Figuring out which part of the documentation is still relevant and checking and incorporating all the details from the dataModel and swagger documentation so that the information is consistent in the new documentation.
  • Asking question to the right set of people and getting answers, my mentors helped immensely in this part since they answered most of the questions as they could and for the rest part redirected me to the relevant person for help.
  • Keeping up the work with my semester exams was a bit challenging, weekly reports helped immensely in that respect since I was able to communicate my progess to the community and track the objectives still left to be completed.