Developing User Friendly Documentation for FHIR API - GSoD 2020

Tags: #<Tag:0x00007f0f22ad2ef0>

Hi @ccwhite23 @jecihjoy @ibacher @herbert24 @sharif,

I have created this topic to discuss about Developing User-Friendly Documentation for FHIR API - GSoD 2020.

Currently, I have configured FHIR2 module in locally and testing its endpoints according to the OpenMRS FHIR Module documentation.

It seems Developing User-Friendly Documentation for FHIR API and Extending User-Friendly Github Documentation for REST API projects have same goal. The REST API Documentation has done using Slate API DOC generator platform. So I started to do the documentation for FHIR2 module using the same platform.

I am looking forward to your suggestions about how this documentation should be.

Thank You.

Hi @ccwhite23 @jecihjoy @ibacher @herbert24 @sharif,

I think It would be great to add steps of configuring FHIR module locally along with the OpenMRS- Core into the wiki page. Then newcomers can easily setup it. Shall I add those steps in to the OpenMRS FHIR Module Documentation page as Instructions to setup FHIR module locally?

  1. Clone openmrs-core from Git repository.
  2. Checkout to its 2.3.x branch.
  3. Build the project using following commands
    cd openmrs-core
    mvn clean package
  4. Downloaded Reference Application 2.10.0 Addons and put its all OMOD files and OWA files in to the following directory according to your operating system.
  • In Linux - ~/.OpenMRS/modules
  • In WIndows - Windows + R > %appdata%>OpenMRS>Modules
  1. Clone openmrs-module-fhir2 from Git repository.
  2. Checkout to its master branch.
  3. Build the project using mvn clean install command.
  4. Copy the fhir2-1.0.0-SNAPSHOT.omod file in openmrs-module-fhir2/omod/target direcotory in the openmrs-module-fhir2 project directory.
  5. Delete fhir-1.20.0.omod file in the following directory according to your operating system.
  • In Linux - ~/.OpenMRS/modules
  • In WIndows - Windows + R > %appdata%>OpenMRS>Modules
  1. Paste fhir2-1.0.0-SNAPSHOT.omod file in to the same directory.

  2. Run the OpenMRS Core project using following commands.

    cd openmrs-core/webapp
    mvn jetty:run

Please correct me if I am wrong in any step. Thank You.

1 Like

I’d put in under the OpenMRS FHIR Module Development section of the wiki, but those look right.

2 Likes

@kaveeshabaddage You might want to add that jdk 8 is needed. I used the latest jdk, the installation failed.

I have installed openjdk version 1.8.0_252 in my Ubuntu OS and it is working fine.

Hi @ibacher @ccwhite23

I tried to access FHIR Swagger Documentation using http://localhost:8080/openmrs/module/fhir/rest/swagger.json URL after I configured the FHIR module in my machine according to the installation steps which I added previously. But I couldn’t access and it gives HTTP ERROR 404.

May I know is this latest FHIR module has an FHIR Swagger Documentation and if it is how can I access this locally?

Thank You.

Oh! That’s pretty easy… No the latest FHIR module does not have Swagger documentation for it. That seemed like doubling the amount work we would have to do. Earlier today, however, I stumbled on this NPM package which purports to be able to take a FHIR conformance statement and generate a Swagger json file. So you should be able to use that to generate Swagger docs if you want them. I might look into integrating that at some point.

The fhir_url would be: http://localhost:8080/openmrs/ws/fhir2/R4 and the conformance_path would just be /metadata (we default to supplying JSON).

1 Like

Thank You @ibacher. I could access the FHIR conformance statement using the http://localhost:8080/openmrs/ws/fhir2/R4/metadata URL. But there was an error when trying to generate Swagger from the FHIR conformance using the NPM package.

I think this FHIR conformance statement is enough to identify available FHIR supported resources. thanks again.

That’s definitely the point of it!

1 Like

Hi @ibacher @ccwhite23 @corneliouzbett @pmanko @jennifer @herbert24

I have created my initial project proposal for creating API Documentation for FHIR Module. Here is the link to that proposal. Could you please review it and give your feedback.

I am hoping to improve it with your valuable feedback. Thank You.

2 Likes

@kaveeshabaddage I would suggest you to add a time line for the project. And clearly mention what are the resources you are going to work on :slightly_smiling_face:

1 Like

And great work so far :smiley: keep it up

2 Likes

thanks much @kaveeshabaddage @ayesh

Thank You @ayesh @herbert24 . I will add a timeline and the resources details to my final project proposal. It is a great experience to work on OpenMRS and I look forward to working more on this organization. :smiley:

1 Like

Thanks much too for all your efforts,we really appreciate :wave: :wave:

1 Like