Skip to content

chb/easipro-smart

Repository files navigation

EASI-PRO SMART Applications

This is a demonstration of SMART-on-FHIR applications using the standalone launch to administer Patient-Reported Outcomes (PRO) instruments at point-of-care, more specifically– Patient Reported Outcomes Measurement Information System (PROMIS). This work was done as part of multi-site collaborative grant– EASI-PRO (Electronic Health Record Access to Seamless Integration of PROMIS).

AssessmentCenter swift framework includes client libraries and generation of QuestionnaireResponse. Read more about its usage here.

Installation

Step1. Download

  1. Xcode (Version 11) is a requirement for publishing native iOS applications
  2. Swift 5.0 Build
  3. git clone --recursive https://github.com/chb/easipro-smart.git
  4. Make sure submodules ResearchKit and Swift-SMART are downloaded.

Step2. Open EASIPRO.xworkspace in Xcode and add the following xcodeproject files if not there already.

  1. SwiftSMART.xcodeproj
  2. AssessmentCenter.xcodeproj
  3. ResearchKit.xcodeproj
  4. EASIPRO-Clinic.xcodeproj
  5. EASIPRO-Home.xcodeproj

Step3. Build and Compile submodules (SwiftSMART, AssessmentCenter, ResearchKit)

Step4. Build setting for the apps:

  1. View General Tab for EASIPRO-Clinic project or EASIPRO-Home project
  2. Select Target- EASIPRO-Clinic or EASIPRO-Home
  3. Find Embedded Binaries section and Add compiled frameworks
    • SMART.frameworkiOS
    • AssessmentCenter.frameworkiOS
    • ResearchKit.frameworkiOS

Step5. SMART & AssessmentCenter settings

  1. Open AppDelegate of the Apps (EASIPRO-Clinic or EASIPRO-Home)
  2. Change settings as per the FHIR Server, protected servers are also supported.
  3. Create a AssessmentCenter Client with endpoint, access identifier, access token
let settings = [
    "client_name"   : "easipro-clinic",
    "client_id"     : "app-client-id",
    "redirect"      : "easipro-clinic://smartcallback",
    "scope"         : "openid profile user/*.* launch"
]

let smart_baseURL = URL(string: "https://r4.smarthealthit.org")!

SMARTClient.shared.smart_settings = settings
SMARTClient.shared.smart_endpoint = smart_baseURL
SMARTClient.shared.acClient = ACClient(baseURL: URL(string: "https://www.assessmentcenter.net/ac_api/2014-01/")!, accessIdentifier: "<# - AC Access Identifier - #>", token: "<# - AC Token - #>")

Step6. Build and Run EASIPRO-Clinic/EASIPRO-Home!


Grant

  • NCATS EASIPRO / Harvard Catalyst CTSA
  • Raheel Sayeed, Daniel Gottlieb, Kenneth Mandl (PI), Justin Starren (PI)
  • Computational Health Informatics Program, Boston Children's Hospital

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published