{"id":22819613,"url":"https://github.com/netreconlab/carekitsample-parsecarekit","last_synced_at":"2025-09-09T19:26:08.723Z","repository":{"id":42077211,"uuid":"268414373","full_name":"netreconlab/CareKitSample-ParseCareKit","owner":"netreconlab","description":"An example SwiftUI CareKit app that auto synchronizes iOS/watchOS/visionOS to the cloud via ParseCareKit and parse-hipaa","archived":false,"fork":false,"pushed_at":"2025-08-12T04:50:16.000Z","size":3558,"stargazers_count":40,"open_issues_count":1,"forks_count":21,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-08-21T07:49:53.984Z","etag":null,"topics":["carekit","hacktoberfest","healthcare","hipaa","ios","medical-application","ocksample","parse-server","parsecarekit","swift","swiftui","synchronization","visionos","watchos"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/netreconlab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["cbaker6","netreconlab"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":"https://www.buymeacoffee.com/cbaker6"}},"created_at":"2020-06-01T03:17:10.000Z","updated_at":"2025-05-14T23:17:24.000Z","dependencies_parsed_at":"2024-07-14T02:26:38.573Z","dependency_job_id":"cce4b61d-0de8-4489-b6af-4e03b73eadbf","html_url":"https://github.com/netreconlab/CareKitSample-ParseCareKit","commit_stats":{"total_commits":173,"total_committers":4,"mean_commits":43.25,"dds":"0.040462427745664775","last_synced_commit":"a9c473aba031d3875c79eaf26d290d2e1a34b706"},"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/netreconlab/CareKitSample-ParseCareKit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netreconlab%2FCareKitSample-ParseCareKit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netreconlab%2FCareKitSample-ParseCareKit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netreconlab%2FCareKitSample-ParseCareKit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netreconlab%2FCareKitSample-ParseCareKit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/netreconlab","download_url":"https://codeload.github.com/netreconlab/CareKitSample-ParseCareKit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netreconlab%2FCareKitSample-ParseCareKit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274348736,"owners_count":25268972,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-09T02:00:10.223Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["carekit","hacktoberfest","healthcare","hipaa","ios","medical-application","ocksample","parse-server","parsecarekit","swift","swiftui","synchronization","visionos","watchos"],"created_at":"2024-12-12T15:13:17.003Z","updated_at":"2025-09-09T19:26:08.693Z","avatar_url":"https://github.com/netreconlab.png","language":"Swift","funding_links":["https://github.com/sponsors/cbaker6","https://github.com/sponsors/netreconlab","https://www.buymeacoffee.com/cbaker6"],"categories":[],"sub_categories":[],"readme":"# CareKitSample+ParseCareKit\n![Swift](https://img.shields.io/badge/swift-5.10-brightgreen.svg) ![Xcode 16.0+](https://img.shields.io/badge/xcode-16.0%2B-blue.svg) ![iOS 16.0+](https://img.shields.io/badge/iOS-16.0%2B-blue.svg) ![watchOS 10.0+](https://img.shields.io/badge/watchOS-10.0%2B-blue.svg) ![visionOS 2.4+](https://img.shields.io/badge/visionOS-2.4%2B-blue.svg) ![CareKit 3.0+](https://img.shields.io/badge/CareKit-3.0%2B-red.svg) [![ci](https://github.com/netreconlab/CareKitSample-ParseCareKit/actions/workflows/ci.yml/badge.svg)](https://github.com/netreconlab/CareKitSample-ParseCareKit/actions/workflows/ci.yml)\n\nAn example application of [CareKit](https://github.com/carekit-apple/CareKit)'s OCKSample synchronizing CareKit data to the Cloud via [ParseCareKit](https://github.com/netreconlab/ParseCareKit). This project also depends on [CareKitEssentials](https://github.com/netreconlab/CareKitEssentials), which adds several cards and extensions for easier development with CareKit.\n\n\u003cimg src=\"https://github.com/netreconlab/CareKitSample-ParseCareKit/assets/8621344/4e57796b-5c81-474d-bd8d-dfd9f18327e3\" width=\"300\"\u003e \u003cimg src=\"https://github.com/netreconlab/CareKitSample-ParseCareKit/assets/8621344/d60d194a-87a5-41e9-8ae4-41a847e91ea3\" width=\"300\"\u003e \u003cimg src=\"https://github.com/netreconlab/CareKitSample-ParseCareKit/assets/8621344/ca0ac2e0-d17d-4bae-88fd-f59b94812419\" width=\"300\"\u003e\u003cimg src=\"https://github.com/netreconlab/CareKitSample-ParseCareKit/assets/8621344/3be47269-cfde-4de2-94ae-25a60f06cac9\" width=\"300\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/873c97a9-006d-4edf-a675-ffb1baeb29c8\" width=\"600\"\u003e\n\n**Similar to the [What's New in CareKit](https://developer.apple.com/videos/play/wwdc2020/10151/) WWDC20 video, this app syncs 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.**\n\n**If you want to populate random sample OCKOutcomes for events in the past, for example to view data in the InsightsView when testing, set \n`daysInThePastToGenerateSampleData` to a negative number in `Constants.swift`.**\n\nParseCareKit synchronizes the following entities to Parse tables/classes using [Parse-Swift](https://github.com/netreconlab/Parse-Swift):\n\n- [x] OCKPatient \u003c-\u003e Patient\n- [x] OCKCarePlan \u003c-\u003e CarePlan\n- [x] OCKContact \u003c-\u003e Contact\n- [x] OCKTask \u003c-\u003e Task\n- [x] OCKHealthKitTask \u003c-\u003e HealthKitTask \n- [x] OCKOutcome \u003c-\u003e Outcome\n- [x] OCKRevisionRecord \u003c-\u003e RevisionRecord\n\n**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**\n\n## Setup Your Parse Server\n\n### Heroku\nThe easiest way to setup your server is using the [one-button-click](https://github.com/netreconlab/parse-hipaa#heroku) deployment method for [parse-hipaa](https://github.com/netreconlab/parse-hipaa).\n\n### Docker\nYou can setup your [parse-hipaa](https://github.com/netreconlab/parse-hipaa) using Docker. Simply type the following to get parse-hipaa running with postgres locally:\n\n1. Fork [parse-hipaa](https://github.com/netreconlab/parse-hipaa)\n2. `cd parse-hipaa`\n3.  `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](https://github.com/netreconlab/parse-hipaa#getting-started) for details\n4. 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`\n\n## Fork this repo to get the modified OCKSample app\n\n1. Fork [CareKitSample-ParseCareKit](https://github.com/netreconlab/CareKitSample-ParseCareKit)\n2. Open `OCKSample.xcodeproj` in Xcode\n3. You may need to configure your \"Team\" and \"Bundle Identifier\" in \"Signing and Capabilities\"\n4. Run the app and data will synchronize with parse-hipaa via http://localhost:1337/parse automatically\n5. You can edit Parse server setup in the ParseCareKit.plist file under \"Supporting Files\" in the Xcode browser\n\n## View your data in Parse Dashboard\n\n### Heroku\nThe easiest way to setup your dashboard is using the [one-button-click](https://github.com/netreconlab/parse-hipaa-dashboard#heroku) deployment method for [parse-hipaa-dashboard](https://github.com/netreconlab/parse-hipaa-dashboard).\n\n### Docker\nParse Dashboard is the easiest way to view your data in the Cloud (or local machine in this example) and comes with [parse-hipaa](https://github.com/netreconlab/parse-hipaa). To access:\n1. Open your browser and go to http://localhost:4040/dashboard\n2. Username: `parse`\n3. Password: `1234`\n4. Be sure to refresh your browser to see new changes synched from your CareKitSample app\n\nNote that CareKit data is extremely sensitive and you are responsible for ensuring your parse-server meets HIPAA compliance.\n\n## Transitioning the sample app to a production app\nIf 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.\n\n### Extra scripts for optimized Cloud queries\nYou should run the extra scripts outlined on parse-hipaa [here](https://github.com/netreconlab/parse-hipaa#running-in-production-for-parsecarekit).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetreconlab%2Fcarekitsample-parsecarekit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetreconlab%2Fcarekitsample-parsecarekit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetreconlab%2Fcarekitsample-parsecarekit/lists"}