smart-launcher icon indicating copy to clipboard operation
smart-launcher copied to clipboard

Add features for SMARTv2

Open jmandel opened this issue 4 years ago • 3 comments

I'm opening this as "draft" to start a conversation -- @vlad-ignatov what do you think about making a v2 branch to support SMART v2 WIP? I've been maintaining this outside of SMART in the early days, but as we move through the HL7 process, it'd be good to get the groundwork merged into an appropriate branch of the upstream smart-on-fhir/smart-launcher project...

BTW this branch is what's deployed for Connectathon at https://smart.argo.run/

jmandel avatar May 11 '21 21:05 jmandel

Yes, i see this is introducing a lot of changes and merging it properly will be difficult. In fact, I did merge it but I am also making other changes to the sandbox...

  • This project is a little outdated so I wanted to do some clean up and upgrade before introducing new features. I am doing that in branch v2, which is currently deployed to https://launch.smarthealthit.org/ (as a trail run). If people do not complain about something that is not covered by the tests, it will be merged back to master.
  • Your changes have been merged to branch v3 which is currently deployed to https://smart-launcher-staging.herokuapp.com/. Please give it a try. It was a complex merge and I may have messed up something. Note that https://smart-launcher-staging.herokuapp.com/ is for test deployments and is not guaranteed to host v3 forever.
  • I also want to switch to TypeScript (at least on the back-end) but I just don't have the time for that now with all the upcoming grant work.

I think the next step right now would be a fhirclient update. Other than the PKCE support, can you please describe what other changes you have made to it?

vlad-ignatov avatar Jun 24 '21 17:06 vlad-ignatov

Thanks for taking a look! Changes include:

  • PKCE
  • Support for SMARTv2 discovery capabilities
  • Support for POST-based authorization
  • Support for token introspection with context including fhirUser and patient
  • Support for SMARTv2 style scopes like category-based Observations
  • Granular Controls demo app that demonstrates the features above

jmandel avatar Jun 24 '21 22:06 jmandel

Changes still planned for SMARTv2 compatibility:

  • https://github.com/microsoft-healthcare-madison/smart-launcher/issues/16
  • https://github.com/microsoft-healthcare-madison/smart-launcher/issues/14
  • https://github.com/microsoft-healthcare-madison/smart-launcher/issues/15

jmandel avatar Jun 24 '21 22:06 jmandel