GSOC 2021 Smart-on-FHIR

Hi all, I am interested by the Smart-on-FHIR project. Correct me if I am wrong, the purpose of the project is to create a Rest API to communicate with the OpenMRS endpoint and the same endpoint is linked to the FHIR modules using the Keycloak module. If yes, then I have other questions: What are the improvements the community is looking for the Keycloak module? Can I also get a link to the Jira registration? What specific are we talking about when it comes to the patient and encounter scope?

Thanks in advance…

1 Like

Hello @djibrillamohamed

Not exactly, we are focusing on authorizing the SMART App to use the OpenMRS resources here. So we need an authorization server that generates the Access token.

If you want to see how SMART App requests the resource and scope. Check this out SMART on FHIR JavaScript Library | SMART JS Client Library.

Right now, we only support Patient EHR and standalone launch (need polishing). We need to add EHR and standalone launch for Encounter. See all issues.

You can request here Jira Service Management

The scope limits the amount of access that is granted to an access token. Check this out SMART App Launch: Scopes and Launch Context.

I hope this will be helpful. Thanks

Hello Team, Does the keycloak github found here " GitHub - openmrs/openmrs-contrib-keycloak-smart-auth" implements the SMART authorization & FHIR access: overview? If yes is it totally? What are the areas that needs work or polishing? Has the security measures been put in place as recommended?

Hello @djibrillamohamed

Yes, you are right; you can find the keycloak implementation here. Moreover, we also need user info from the OpenMRS database for that, we have GitHub - openmrs/openmrs-contrib-keycloak-auth: A plugin for Keycloak to authenticate users against the OpenMRS data store.

Patient EHR and standalone launch need polishing like we have to bypass the authentication (Username Password) Screen from the flow. See all issues.

We don’t need to worry about the security measures because keycloak manage it completely.

1 Like

Hello, I am trying to install the client on my computer and I am faced with the following issue: I installed the client “npm ifhirclient” + hapi “nom install @hapi/hapi”

But I am still faced with a json package missing. Find attached screenshoot of my error Any clue on how to resolve it?

Hi @djibrillamohamed, this problem usually occurs because when your targeted directory is not an npm directory. In the sense that npm has not been initialized. Try resolving your targeted directory path and ensure you are in the right directory. A workaround this issue might be this… If you know all the dependencies required to launch the application? Then you can try running npm init first before installing the required dependencies.

1 Like

Thanks @joachimjunior

No worries @djibrillamohamed. Please just do me the favour of giving us a feed back if you succeed.

Hello @djibrillamohamed, As I can understand, you are trying to setup-up a SMART App (client) to Test SMART-on-FHIR.

Adding to what @joachimjunior correctly said, you need to create a module in the client. This module must contain launch-standalone.html and index.html so that client can request the resource and scopes.

After that, in the newly created module directory run, npm start to run the client application.

Please follow the SMART-on-FHIR JS library SMART on FHIR JavaScript Library | SMART JS Client Library

I have created a Demo SMART App. You can take the references.

1 Like

Hello @joachimjunior, I now have the following screen…

Thanks @theanandankit, my main skillset is in Java. I am going through.

Great step ahead @djibrillamohamed, right now you are seeing this error because you are trying to run a script not stated in your package.json file.

Look at the scripts section in your package.json and see the commands available. You can modify them the way you want. That is… if you have the required knowledge to do that. If that’s not the case, I’d recommend you go through this resources.

  1. Getting started | npm Docs
  2. An Absolute Beginner's Guide to Using npm - NodeSource

Hello @joachimjunior , I have gone through the two links and some resources on how to get started in NodeJS. Can I have a more specific guide through which I can refer to instead of asking very basic questions?

I have created the launch and the index pages, however when I follow the instructions on this page:“SMART on FHIR JavaScript Library | SMART JS Client Library” and run “npm run fhir-client.js”. I am having an error (screenshot ).

Is this project based only on NodeJS?

Thanks for all the support.

Hello @theanandankit, Thanks for the help, I have gone through your repository. I am getting a blank page, while opening the javascript pages(launch standalone and index)

. .

My goal is to get started with a functioning code and get used to the structure used.(GSOC 2021). Any help will be much appreciated.

Thanks for the support.

Hi @djibrillamohamed, hope you are doing great. It’s fine… Feel free to ask any questions and any point.

You can have a look at this tutorial. Your errors are more about the basic concepts. › npm Web results npm - Getting started with npm | npm Tutorial

Okay brief, consider this. You can’t run a script command when it has not been defined. Before running a script, ensure to define this in the package.json folder in your workspace(npm) directory.

I’ll advice you not to rush… Take your time to grasp the basics. It’s usually like this at the beginning. Give it time. May be you could do a simple test project to have the basics before you dive into this.

1 Like

Great, you are getting this blank page because this is a demo SMART App, developed for testing purpose. if you see the code you will find that result is printed in the console.

Please ensure that you are running the keycloak server too. GSoC 2020: SMART-on-FHIR Project Final Evaluation. please follow the video present in this talk.


Thanks @theanandankit

1 Like