An example application of CareKit's OCKSample synchronizing CareKit data to the Cloud via ParseCareKit.
Similar to the What's New in CareKit WWDC20 video, this app syncs between data between iOS and an Apple Watch (setting the flag isSyncingWithRemote
in Constants.swift
to isSyncingWithRemote = false
. Different from the video, setting isSyncingWithRemote = true
(default behavior) in the aforementioned file syncs iOS and watchOS to a Parse Server.
ParseCareKit synchronizes the following entities to Parse tables/classes using Parse-Swift:
- OCKPatient <-> Patient
- OCKCarePlan <-> CarePlan
- OCKContact <-> Contact
- OCKTask <-> Task
- OCKHealthKitTask <-> HealthKitTask
- OCKOutcome <-> Outcome
- OCKRevisionRecord <-> RevisionRecord
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
The easiest way to setup your server is using the one-button-click deployment method for parse-hipaa.
You can setup your parse-hipaa using Docker. Simply type the following to get parse-hipaa running with postgres locally:
- Fork parse-hipaa
cd parse-hipaa
docker-compose up
- this will take a couple of minutes to setup as it needs to initialize postgres, but as soon as you seeparse-server running on port 1337.
, it's ready to go. See here for details- If you would like to use mongo instead of postgres, in step 3, type
docker-compose -f docker-compose.mongo.yml up
instead ofdocker-compose up
- Fork CareKitSample-ParseCareKit
- Open
OCKSample.xcodeproj
in Xcode - You may need to configure your "Team" and "Bundle Identifier" in "Signing and Capabilities"
- Run the app and data will synchronize with parse-hipaa via http://localhost:1337/parse automatically
- You can edit Parse server setup in the ParseCareKit.plist file under "Supporting Files" in the Xcode browser
The easiest way to setup your dashboard is using the one-button-click deployment method for parse-hipaa-dashboard.
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:
- Open your browser and go to http://localhost:4040/dashboard
- Username:
parse
- Password:
1234
- 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.
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 do not allow non-ssl connections in production, and even if you find a way to connect to non-ssl servers, it would not be HIPAA compliant.
You should run the extra scripts outlined on parse-hipaa here.