Skip to content

Latest commit

 

History

History
61 lines (43 loc) · 5.06 KB

README.md

File metadata and controls

61 lines (43 loc) · 5.06 KB

CareKitSample+ParseCareKit

Swift Xcode 13.2+ iOS 15.0+ watchOS 8.0+ CareKit 2.1+ ci

An example application of CareKit's OCKSample synchronizing CareKit data to the Cloud via ParseCareKit.

NEW - Just like the What's New in CareKit WWDC20 video, this app syncs between the AppleWatch (setting the flag in ExtensionDelegate.swift and AppDelegate.swift to syncWithCloud = false. Different from the video, setting syncWithCloud = true (default behavior) in the aforementioned files syncs iOS and watchOS to a Parse Server.

ParseCareKit synchronizes the following entities to Parse tables/classes using Parse-Swift:

  • OCKTask <-> Task
  • OCKHealthKitTask <-> HealthKitTask
  • OCKOutcome <-> Outcome
  • OCKRevisionRecord.KnowledgeVector <-> Clock
  • OCKPatient <-> Patient
  • OCKCarePlan <-> CarePlan
  • OCKContact <-> Contact

Use at your own risk. There is no promise that this is HIPAA compliant and we are not responsible for any mishandling of your data

Setup Your Parse Server

Heroku

The easiest way to setup your server is using the one-button-click deplyment method for parse-hipaa.

Docker

You can setup your parse-hipaa using Docker. Simply type the following to get parse-hipaa running with postgres locally:

  1. Fork parse-hipaa
  2. cd parse-hipaa
  3. docker-compose up - this will take a couple of minutes to setup as it needs to initialize postgres, but as soon as you see parse-server running on port 1337., it's ready to go. See here for details
  4. If you would like to use mongo instead of postgres, in step 3, type docker-compose -f docker-compose.mongo.yml up instead of docker-compose up

Fork this repo to get the modified OCKSample app

  1. Fork CareKitSample-ParseCareKit
  2. Open OCKSample.xcodeproj in Xcode
  3. You may need to configure your "Team" and "Bundle Identifier" in "Signing and Capabilities"
  4. Run the app and data will synchronize with parse-hipaa via http://localhost:1337/parse automatically
  5. You can edit Parse server setup in the ParseCareKit.plist file under "Supporting Files" in the Xcode browser

View your data in Parse Dashboard

Heroku

The easiest way to setup your dashboard is using the one-button-click deplyment method for parse-hipaa-dashboard.

Docker

Parse Dashboard is the easiest way to view your data in the Cloud (or local machine in this example) and comes with parse-hipaa. To access:

  1. Open your browser and go to http://localhost:4040/dashboard
  2. Username: parse
  3. Password: 1234
  4. Be sure to refresh your browser to see new changes synched from your CareKitSample app

Note that CareKit data is extremely sensitive and you are responsible for ensuring your parse-server meets HIPAA compliance.

Transitioning the sample app to a production app

If you plan on using this app as a starting point for your produciton app. Once you have your parse-hipaa server in the Cloud behind ssl, you should open ParseCareKit.plist in Xcode and change the value for Server to point to your server(s) in the Cloud. You should also open Info.plist in Xcode and remove App Transport Security Settings and any key/value pairs under it as this was only in place to allow you to test the sample app to connect to a server setup on your local machine. iOS apps don't allow non-ssl connections in production, and even if you find a way to connect to non-ssl servers, it wouldn't be HIPAA compliant.

Extra scripts for optimized Cloud queries

You should run the extra scripts outlined on parse-hipaa here.