The FHIR standard has become de-facto way for RESTful communication with EHR systems. We would like to have the next version of lh-toolkit to be based on FHIR RESTful services. However, the rapid changes in the FHIR standard are hard to follow. Thankfully, the HAPI library is a high-quality, robust Java-based library that we can use to be up to date with the FHIR releases.
The GSoC project will build on the HAPI JPA server and have the following main deliverables:
Deploy it over MySQL/PostgreSQL using JPA.
Add authentication using Spring Security with handlers for password and OAuth
Add authorization based on roles and permissions defined in a database table
Add ways to deploy a user-interface that can be uploaded to the tomcat server
Bonus: Allow for uploaded and deploying modules that can add additional web services using Spring MVC or Servlets or another Java Web Services approach.
The starter task would be to create a docker image that deploys HAPI JPA server on tomcat on MySQL database. Please post the link to the your docker image/compose repository, so that it improves your GSoC application.
Hi Saptarshi, I looked at the HAPI FHIR docs and I have completed the docker setup from the hapi-fhir-starter from their github repo. Anything else that I can work on?
Hi, really sorry for the late response.Caught a very bad flu and couldn’t work on the proposal. I guess I am already running late in the submission process. I had few doubts regarding the deliverables as I have to explain in the proposal how I am going to proceed and develop it .
I was able to understand what HAPI-FHIR is and it provides a smooth REST backend for CRUD operations. The first,second and third case are pretty straight forward but I am not sure what the fourth one demands. Please clear me on this whether it is to develop a frontend like in the current version at https://toolkit.librehealth.io/master/ as the second part includes creating authentication. or is it something else.
What third party OAuth services are to be added so that I can mention everything in detail in proposal.
Bonus part as in what type of modules (how are they related to the LH-Toolkit) should be allowed.
The 4th is to be able to make it possible to deploy the user-interface that is built using web components, into this HAPI FHIR backend. It is not to build the UI by yourself.
It is not a third-party OAuth. But the Toolkit to be a OAuth service provider, so that apps can use it as OAuth and authenticate into the Toolkit-based EHR.
These are packaged zip files that can be deployed to add new webservices into Toolkit, besides the HAPI FHIR ones.
Correct me if I am wrong,
So in my knowledge of the project, what according to me the deliverables are:
Connecting the Backend with a database which includes all the data of an EHR system plus the user details to authenticate.
Using Spring Security to build a password based login REST to access the EHR as an user and also able to create an OAuth Structure for LH-Toolkit for other apps to fetch data as a user.
Creating users with different roles (database should contain role and permissions allowed for example for a returning user or a admin).
Create the EHR backend such that a user-interface can be easily implemented separately (built on lh-toolkit componenets). I am not sure if I have to develop an interface in the project itself or not.
Yea. I did. Got it reviewed by @sunbiz. I was able to make some of the changes he told me to do. Added details etc. But when I exported it, I guess, Google sheets wasn’t on my side today, the diagrams weren’t there. but somehow I got the diagrams, but it messed the formatting of the proposal.So had to submit it like that. Anyways, the proposal period is done. Hoping everything goes fine.