What's New in CareKit and ResearchKit

Session 232 WWDC 2017

Whether you're a medical researcher or a care provider, the CareKit and ResearchKit open source projects are designed to be the quickest path to delivering a customized iOS app to your candidates or patients. These frameworks are constantly gaining features and functionality from both Apple and the community. Discover the latest active-tasks, care modules, and tools designed to allow medical professionals the ability prototype their own care app.

[ Crowd Sounds ]

[ Applause ]

Hello. Good evening, everyone.

My name is Samantha Mravca.

And I am really excited to share with all of you, today, what's new in ResearchKit and CareKit.

So, to start, as many of you know, ResearchKit is an opensource framework that we released in 2015.

And it was designed to tackle common challenges in research, such as limited participation and infrequent data, by enabling both developers and researchers to create and execute large scale studies, using our iOS devices.

After the launch of ResearchKit, our team focused their energy on a more patient centric approach to health.

Which eventually led to the creation of ResearchKit's sister framework, CareKit.

CareKit was released in 2016 and it was designed to empower patients by enabling them to take a more active role in their own care.

And so, although these frameworks were built with different audiences in mind, they truly work together.

Not only as sister frameworks, but they were built to sit beautifully on top of Apple's HealthKit framework.

That way, they can leverage and share the rich health data from other third-party apps and devices.

And so, by combining the power of all three, you can create a truly elevated experience for your end user.

So, even just since last WWDC, we've seen lots more ResearchKit and CareKit apps pop up all over the globe.

And so, quickly, before we jump into the rest of the talk, let's just take a look at some of these examples.

So, to start, in the U.K.

MyAsthma is a ResearchKit app that helps patients better understand their asthma triggers, as well as important information about their surrounding environment.

Over in Japan, Nestle Skin Health recently released their ResearchKit app to study common skin conditions by using accelerometer data from the watch to detect scratching during sleep.

And down in Australia, Professor Timothy Skinner and his team have developed a CareKit app emojifit Diabetes, which makes great use of emojis to convey often overwhelming and confusing medical information to patients trying to manage their condition.

And lastly, back in the U.S., PPD Act is a ResearchKit app from the researchers at UNC Chapel Hill that is aimed to better understand the genetic basis of postpartum depression.

And Sharp Healthcare is working on their CareKit app to help their patients post eye surgery.

That way they can stick to their recovery plans in those crucial weeks immediately following their surgery.

And so, these are just some of the examples of the amazing ResearchKit and CareKit apps that we have seen launched over the last few years.

And we are so excited to keep seeing more.

But with that, let's go ahead and jump into the rest of our talk.

And we can start off by going over the new features in both of the CareKit and ResearchKit frameworks.

After that, I'll invite up my coworker, Srinath, who will share a new CareKit prototyping tool with all of you.

And then, once he's done, I'll jump back up onstage and we can talk about the community and our collaboration together.

So, let's start with ResearchKit, our new updates and features.

And the first update we have for you is a small but powerful change, that we made to the Tone Audiometry task.

As many of you know, this Tone Audiometry active test is a hearing test.

During which users are asked to wear headphones and listen to a series of different audio frequencies, that can be delivered to either the left or right ear.

As users hear these frequencies, they will progressively increase in volume until the user taps a button to indicate that they've heard the sound.

And in the old version, we just had one button for them to tap.

But now, we are including both a left and right button.

That way, not only can you indicate when you've heard the tone, but you can also specify which ear you've heard it in.

So, next we have a brand new active test developed by one of our own Apple engineers, the Stroop Test.

This test helps measure selective attention by asking participants to focus their attention on one stimulus, while ignoring another.

So, during this test, users will see two possible combinations of text and tint appear on the screen in front of them.

And these can be either concordant or discordant.

And you can see on the screen here, that we must ignore the text and instead, select the button that reflects the tint color that we see displayed.

As users continue to complete these attempts, a pass or fail will be recorded for each attempt, as well as the time to complete the test.

So, next we have a contribution from the community.

And I'd like to thank Faraz Hussain, who is one of the By Effect app developers from the Robert Wood Johnson Foundation ResearchKit Mood Challenge.

He has contributed the Trail Making Test, which is a neuropsychological test of visual attention and task switching.

And during this test, users must connect a series of labeled circles, as you see here, on the screen, from one A, two B, three C, and so on.

And then, the time to complete this test will be recorded.

And the last active task we have is the new Range of Motion Active Task.

And a big thanks goes to Doctor Raj Karia, John Guydo, and Darren Levy for contributing the Range of Motion Active Task.

This lets you measure both flexed and extended positions.

And from the beginning, users will be asked to place their device in the proper location.

And then, using a touch anywhere active task, they can simply tap the screen to indicate that they're ready to proceed with the rest of the steps.

And so, as they continue to follow the steps in this test, recordings from both the accelerometer and the gyroscope will be recorded.

And what's even more, is not only did they contribute this for the shoulder.

But they contributed another version with the company assets for the knee, as well.

And so, lastly, I'd like to highlight a new video instruction step for ResearchKit.

This was contributed by Oliver Shcaefer.

So, thank you, Oliver.

And this step makes it really easy, now, for you to display video content within your apps, from either a remote or local source.

And so, with that, you have the latest updates and features to ResearchKit, including several contributions from the community.

And additionally, we will also, now be assigning a visual object identifier to the ResearchKit repository.

That way, as you all bring the results of these studies to the academic community, you can now reference the framework using this unique string.

So, with that, I would like to go ahead and jump into CareKit.

So, as you know it today, CareKit consists of four core modules.

A Care Card, a Symptom Tracker, an Insights module, as well as a Connect module.

And so, today, the Care Card lets patients view all of their daily interventions.

These are things like completing medication or stretches.

And the Symptom Tracker lets patients view all of their subjective or objective measurements that they track.

And these could be things like tracking weight and blood pressure, or mood and pain scores.

And so, over the last year we have heard feedback that many patients would like to see all of their activities, both interventions and assessments, in one view.

And so, to support that feedback our team has created what we are calling our Care Contents view.

Which lets you combine all of those activities and see them in one tab.

So, let's go ahead and take a look at this new Care Contents view.

And you'll see in my example CareKit app that I've set up to help manage my migraines, we can see all of my activities, here.

And they all contribute to the same completion score at the top.

But let's go ahead and jump into this and dig in, piece by piece.

Because we have lots of other updates to share, as well.

And you'll see here, at the top, we have a new header view with lots of UI updates, including this new ring view, to show completion.

As well as the new heart icon in the center.

As users complete their activities for the day, this ring will fill up.

And once they reach 100% completion, the circle will fill in and a star badge will appear in its place, which you can see in the week view at the top.

And this lets user quickly glance and have an idea for 100% compliance days.

And what's even more exciting, is that this new heart icon you see in the center is just one of 28 icons designed by Apple's own HI team.

And you can now, leverage these glyphs and icons within your own CareKit apps.

And not only will they display beautifully on the patient app that you just saw, but they'll also appear beautifully as a complication on the watch.

That way patients can quickly glance at their daily progress for the day.

And so, using these new glyphs is really straightforward.

All you need to do is just set the glyph properties within the view controller, and then your desired icon will display upon navigating back to your Care Contents view.

If we zoom out and we look at the rest of my Care Contents tab, you'll see at the top, here, my three intervention activities for the day.

Of which I've already completed several, including two of my breathing exercises from my watch.

I probably should have done another one.

But we'll go ahead and scroll down, and we'll see that we also have my two assessments.

My two assessments for sleep and stress.

My sleep data is coming directly from HealthKit, that way I don't need to do any additional entry on my part.

And then, my stress survey, I can quickly fill out using a ResearchKit survey.

And unfortunately, you notice that I did not get much sleep last night, and I was a bit stressed when I took my survey.

I think if I took that survey an hour ago, it probably would have been ten.

But let's go ahead and scroll down, and look at the rest of my Care Contents view.

And you'll notice that we've made a few other updates, here.

The first one lets you now tag activities as optional.

And so, this means that these activities will not contribute to your daily completion score, at the top.

So, as you can see here, it's great for take-as-needed medications, like my ibuprofen, that we don't actually require for the patient to take as part of their care plan.

Right below that, you'll see another new activity that we have, which is a new Read Only activity.

And this lets you now, just display informational text to the user, that actually doesn't require any action on their part.

So, let's go ahead and take a look at how we can create these new optional and Read Only activities.

As you can see, here, our team has created a brand new Boolean parameter, specifically for optionality.

And as you saw on the Care Contents view, by setting that to true, it will prevent my ibuprofen from actually contributing to my daily completion score.

We also, took a look at the new Read Only activities to display information to the user.

And you'll also notice that we created a new Read Only initializer.

Which this will allow you to now, create these activities the same as you would any other activity type.

And so, there you have our new combined view, that we're calling Care Contents, with all of your activities, interventions, and assessments on the same tab.

As well as some new other activities that we just saw.

And so, with that, I'd like to now jump into a new topic and introduce you to a brand new API that we have built this year, to support thresholds.

So, this new API will let developers set and track two different threshold types, adherence or numeric, which you can link to specific Care Plan activities.

And so, let's look at how we can create these thresholds in the code.

And you'll see it's pretty straightforward, again.

Just depending on which type of threshold you want to use.

You just need to make sure that you're using the corresponding initializer type.

So, while numeric thresholds can only be applied to assessments, adherence thresholds can be applied to both assessments and interventions.

And once you've gone ahead and created those thresholds, you can then use them to perform any custom logic you want.

The Care Plan store is going to automatically notify you any time one of these new thresholds has been invoked.

And so, to support this new capability, our team has gone ahead and made a few updates to the Insights tab.

That way we could leverage these thresholds and display them in a nice way.

So, here at the top, you'll see a brand new widgets view.

And this lets you display up to three widgets for you to now, highlight key values to your patients.

What's even more, is you can link these widgets to a Care Plan activity.

And then, you don't need to do any additional work.

And all of the values and widget colors can update automatically, based on the most recent data inputs, as well as the thresholds that you've already set.

So, let's take a look at how we can create these widgets.

And we'll start by checking out my Stress Assessment that we saw from my Care Contents view.

So, here we have my Stress Assessment.

And we'll see that the first method for creating widgets actually handles all of the data fetching and updating for me.

All we need to do is just link it to the Activity identifier that we want to display, and the rest will happen behind the scenes.

The second method for creating widgets allows for a little bit more customization.

You can specify exactly what you want to display, by just using the title and text parameters, as you see, here.

And so then, once you've gone ahead and created these widgets, it's then, really easy to pass them into the view controller you saw, by using our new patientWidgets parameter.

And this will help ensure that your desired widgets will appear when you navigate back to your Insights tab.

So additionally, some thresholds might require additional text or information that you want to give the user.

And so, we've created this separate section, below, for threshold alerts.

That way, you can create messages for specific activities.

And this will be evaluated the same as the widgets above, and automatically display if one of those thresholds has been invoked.

And so, there you have our Insights tab, which we've updated to really leverage these new threshold APIs that we've built.

And let's go ahead and jump into our last tab for CareKit, which is Connect.

You'll notice a lot of the same features, here, including our Profile header view, as well as your care team members and contact cards.

But you'll also notice this new inbox feature.

And if we tap into that, it will take me to my messaging screen with my care team member.

So, our team has gone ahead and built the UI that will allow developers who want to take Connect one step further, by connecting their patients to their care teams directly through messaging.

So, there you have CareKit.

And we've made lots of update, including our brand new combined view, as well as UI and features across all of our tabs.

And additionally, we are also announcing a new bridge API for CareKit, that will allow you to now synch this data with compatible HIPAA compliant backends.

And to learn more about that, I highly recommend going to tomorrow's talk, hosted by Kelsey Dedoshka, on Connecting CareKit to the Cloud.

So, up until this point, we have focused a lot of our attention on the developer community.

But we understand that CareKit has a much wider audience that's interested in this framework.

And that is namely those of you in the medical profession, as well as those of you in academia.

So, I'm really excited to say that this year, we are releasing a new tool for nontechnical audience.

And to talk more about that, I will invite my coworker, Srinath, up to the stage.

Thank you, Sam.

Hello, everybody.

My name is Srinath.

I'm a software engineer at Apple.

And today, I'm here to talk to you about the CareKit Prototyping Tool.

Developing Healthcare centric apps comes with its own set of challenges, as many of you might have experienced.

But the most interesting one is that it requires a lot of collaboration between the deeply knowledgeable healthcare community and the amazing app developers.

Now let's say, for example, that I am a physician and I'm really interested in exploring the possibility of taking a post discharge treatment plan, which I conventionally hand out to my patients as a piece of paper.

And somewhat digitizing it, by converting it into an app that is easy to use and which would also allow my patients to track their medications and adherence on a day to day basis.

Which is crucial for their successful recovery.

Now, this sounds like an amazing idea and I'd love to pitch this to my department.

But before I can do that, there are a few things which I need to do on my own.

First, I try to explore what technology is already available, out there, that can help me achieve this goal.

Then, I move on to creating some sort of rough sketches in order to visually represent to other people what exactly I have in my mind.

And then, finally, I feel that I'm well prepared to take this idea to my department.

And if, and only if, they approve it do I get to hire the necessary resources to get started on developing the actual app.

Now, switching back to my developer mode, it's interesting to note that the initial few steps of this process is typically handled by someone who has little or no experience with iOS app development.

Ever since we announced the CareKit framework, in 2016, we've received a ton of requests from healthcare professionals and people in academia.

Inquiring about nontechnical resources that can help them better understand the capabilities of the CareKit framework.

This is when we realized that there seems to be a barrier for entry for our nontechnical audience.

Which is why we've come up with a tool that can help simplify this process, by allowing anyone to create a custom prototype CareKit app, without having to write any code, at all.

Now, by the end of this talk you'll be able to take a treatment plan that looks like this, and convert it into a prototype CareKit app that looks like this, just by modifying the contents of a human readable file.

Now, before I show you guys how this can be done with a demo, let's take a step back in order to see how this thing is wired up, under the hood.

So, what we have here, is a page which we call the Care Contents view.

You will be able to add all the medications and assessments which you want your patients to adhere to on a day to day basis.

What we have done is we have created a mapping between the underlying code that generates this page, and the parameters which define the characteristics of every single element.

But let's take a closer look at what I'm talking about.

So, what we have here, is called an assessment.

Now, your patients will be able to tap on this.

And in this example, they'll be able to enter a value in a scale of one to ten, in order to denote how much pain they are experiencing at that given point in time.

Now, this element can be represented in a simple tabular format that looks something like this.

Now, the values which you type into this table will help characterize the element that you're seeing on that page.

Now, let's try modifying some of these values and see what happens.

So, now I'm trying to create an activity which is of type intervention.

And more specifically, I want to create an intervention for the acetaminophen drug.

Now, this new table will map to a totally different element on my UI, as you can see here.

I believe that now is a good time for me to introduce to you, as to how we have implemented this mapping.

We are using something known as a PLIST file.

Now, for all the developers in the audience, you guys know that a PLIST file is basically an xml file, in which you can have key value pairings.

But for our nontechnical audience, you can think of it as a form which has different fields that you can fill out.

We have gone ahead and applied this mapping throughout the CareKit framework.

So, for example, here you see the Insights tab.

This is a great place for you to display critical information to your patients in the form of widgets, threshold parameters, adherence messages, and charts.

All these elements are configurable.

For example, the widgets that you are seeing on top of your screen here, can be easily mapped, once again, to a tabular format that looks something like this.

And similarly, for the Contacts tab, depending on what values you provide as part of the PLIST file, you'll be able to characterize the contact which you want to add.

So, now that we have seen how this mapping methodology works, in order for us to get started on using this tool there are two important components that are necessary.

The first one is called XCode.

And to all the developers, here, I hope you guys know what XCode already is.

And for our nontechnical audience, please bear with me for a second, while I try to explain to them, what XCode is in a succinct manner.

You can think of XCode as the one stop shop for creating apps that can run on any Apple device.

And let's leave it at that.

So, XCode is an application which is provided by Apple.

And you can download it for free from the Mac App Store.

You can just tap on install and it'll automatically show up in your Applications folder.

Now, the second part to this puzzle is called CareKit Repository.

This is nothing else but a bunch of files that you need to download in order to start using the CareKit Prototyping Tool.

And this is available from our website, CareKit.org.

You can scroll down and tap on the menu that says get it on GitHub.

That'll take you to a new page.

And from there, you can click on the Download button in order to download a zip of the file.

Now that we are all set up to start using this tool, let's jump right into a demo where I'll show you how you can build a custom prototype CareKit app.

[ Applause ]

So, this machine already has XCode installed.

So, right now, what I'm going to do, is I'm going to go ahead and fetch the files from the CareKit repository.

So, I'm going to type in here CareKit.org.

I'm going to scroll down, get it on GitHub, and when I tap on the Download button, here, I have an option that says Download Zip.

And you'll notice that the files have downloaded, already.

So, let me open that up.

And now, I'm going to just close out Safari, because I don't need it anymore.

So, this is a bunch of files which we will be able to see, immediately.

And you don't have to bother about all of them.

The files which you are interested in is located in this folder called the CareKit Prototyping Tool.

And inside this, you can double tap on OCKPrototyper.

And the particular file which you need to open is called OCKPrototyper dot xcodeproject.

So, now when I click on this and tap Open, it'll automatically launch using the XCode app, which I just downloaded from the App Store.

So, this is your first look at XCode.

And before we get started with modifying anything, let's try to run this Prototype app and see what is looks like.

Now, in order to do that, you have to focus on the top left corner, only.

Make sure that you have selected CareKit Patient.

These individual elements are called schemes.

And we are interested in the CareKit Patient scheme.

And then, you need to decide which device do you want to run your prototype app on.

And here, I'm going to select iPhone 7 Plus.

And in order to start running this, all you have to do is press the Play button, right here.

So, there we go.

So, here you'll notice that we have launched a new window, and this is called the iPhone Simulator.

This is an application which tries to mimic an iOS device, very accurately.

So, here you'll notice that the app has launched.

It already has the three important tabs.

The first one is called Care Contents.

Now, as I start interacting with every single element to indicate that I've completed this medication, you'll notice that it is contributing towards my daily completion goal.

Which is my adherence, as well.

The next one is called Insights.

Here, you'll notice that I already have a couple of widget items.

And I have a prepopulated chart, as well.

The final tab is called Connect.

Here, you have the different contact, along with some information.

And you also, have the brand new Inbox UI, which Sam spoke about.

So, you can tap in here, type out a message if you want, click Send, and it'll behave the way you would expect it to.

So, now that we have done all this, let's actually start modifying some of these things.

Now say, for example, that you took screenshots of these different pages, and you showed it to some colleague.

And I did something similar, and I got a feedback that said, ''This looks comprehensive, but let's add a few more things.'' So, one of the main feedback was that I should add a new medication for ibuprofen.

Next, they wanted me to add a new assessment.

And then, finally, they also were a bit critical about the glyph icon, here, and they wanted me to switch that out.

So, let's see how we can do that.

So, I'm going to go back into XCode.

And all the files can be accessed, here.

And I can tap on this little arrow button, here, in order to collapse it.

And the files which I am interested in are the PLIST files.

So, there are two files that are available, here, Patient dot plist and Template dot plist.

Template, as the name suggests, just has some guidance on what values you can or cannot use for certain fields.

But the file which actually tells all the tricks behind is Patient dot plist.

Now, you notice that there are five sections available, and each one corresponds to a specific element in your Prototype app.

Now, if I want to add a new intervention or assessment, the subsection which I'm interested in the most, is Care Contents.

So, let me go ahead and see what is already available.

So, I collapse it, and there are there items available for me.

So, the first one is an intervention.

And this is for the acetaminophen medication, which you saw in the Prototype app.

The next one is an assessment for pain.

And the final one is Read Only.

So, in order to start creating a new intervention, the easiest thing to do is to just right click on it and click Copy.

And now, I can paste it back right in.

So, here I can go ahead and modify the values.

So, for identifier, they need to be unique across all my activities.

So, in this case, I'm going to just keep it the name of the medication, which I am trying to add.

So, the title is going to be Ibuprofen.

The dosage here, is going to be about 200 milligrams.

And instructions, I can say something like ''Take as needed.'' And one more thing which I can do is set the tint color of the circles that appear.

So, in this case, let's say I want to set the green color.

So, here I can put in a hex value, directly.

So, I'm going to just try 0x00ff00, which stands for green.

And it'll automatically convert it to its decimal equivalent.

And one other important thing about adding medications, is that you should specify the schedule, as well.

How many dosages are your patients supposed to take, and when.

That can be specified by going to the Schedule subsection.

And under this, you can specify the start date and date, as well as occurrences on each week.

So, I'm going to go to Occurrences.

And you'll notice that this looks kind of weird.

But this pretty straightforward, in the sense that there are seven elements, here, which map to the seven days of the week.

Starting from Sunday all the way to Saturday.

So, if I want to prescribe two dosages of ibuprofen on every single day, I can just change these values to two on all seven days.

And with that, I'm done adding a new medication to my Prototype app.

The next thing which I want to do, is add an assessment.

So, I'm going to follow the same routine, where I copy, paste an existing assessment.

And I'm going to change this to Mood.

I want to create the mood of my patient.

So, here Mood.

Ten being very happy.

And one more thing you can do, when it comes to assessment, is that you can leverage the new threshold functionality, which we spoke about.

So, in this case, what I want to do, is if my patient enters a value which is below a certain threshold, I want to display some sort of an alert to them.

Which could be very important, depending on the scenario.

So, let's see how that can be done.

So, I'm going to click on Threshold.

You'll see that there's an item available, already.

You can add multiple items to the same Threshold, as well.

But in this case, I just want one.

If the value entered by my user is less than three, I want to throw an alert that says, ''Please reduce pain medication dosages by half.'' And the final thing which I need to do, is set the schedule, as well.

And I want this to repeat once every day.

Right now, it is repeating on alternate days of the week.

So, I can just go ahead and switch that out, as well.

And that's it.

So, the final thing which I need to do, based on my feedback, was to change the glyph type.

And looking at the different subsections, you'll notice that there's one that says UI customization.

So, that is probably a good place to start.

And here, you'll notice that there is a subsection which says Care Content UI.

Glyph icons, typically, appear only in Care Contents view.

So, I'm going to go ahead and click on that.

And there is an option available for glyph type.

Currently, it is pointing to Home Care.

I'm going to switch this out to Heart.

Now, obviously, there are only certain values that you can enter, here.

And all those are listed in your Template dot plist file.

So, you can reference it as you are going about it.

And now that I'm done, I'm just going to go ahead and click this Play button, again.

And let's see what happens.

So, I have the Simulator, here.

And there you go, my app launches.

First thing, you'll notice that my glyph icon has changed to Heart.

There is a new survey.

And you'll notice that there's a new ibuprofen medication, as well.

And it came in the tint color which I specified it as.

And once again, you can go ahead and interact with all of them, and they will automatically contribute to what's your daily goals, as well.

So, I can go to the Insights tab and you'll notice that, currently, there are no threshold alerts available for me.

But if I go to my survey, and if I enter a value which is less than three.

So, I'm going to enter two, in this case.

And if I go back to Insights, you'll notice that we have automatically calculated that, and we are displaying an alert for your patients to view within the Prototype app, as well.

And that is the demo for this tool.

[ Applause ]

So, you guys saw how easy it is to create a prototype CareKit app that is tailor made for your custom need.

Now, I would like to go over a quick overview of the CareKit Prototyping Tool.

And to switch things up, I want to start off by acknowledging some of the limitations of this tool.

First and foremost, this can be used for prototyping only.

There's no way that you can build a fully functioning app using this tool, which you can immediately share using the App Store.

There's no support for adding custom views.

And you won't be able to integrate with any of the frameworks which we provide as part of the Apple ecosystem.

So, for example, if you want to create the heartrate of your patient from their Apple Watch and display that back to them in the form of a widget, that is not something you'll be able to do using the tool.

You'll be able to create a mockup of that, but not the actual implementation.

And now, let's deal with some of the features for this tool.

You could be a physician or a PhD student.

You'll be able to pick up and start using this tool without having to write any code, at all.

The second thing, is that you can create multiple PLISTs and switch between them, thus allowing for rapid prototyping.

And because the CareKit framework is opensource, if you have created a PLIST for your custom case and if you want to share it with the community, you can do that, as well.

It is highly customizable, because we have applied this mapping approach throughout the CareKit framework.

And finally, if you are a developer, and if you are really interested in any of the features we spoke about, today.

And you want to try it out for yourself, you can give it a spin using the CareKit Prototyping Tool.

And then, make an informed decision as to whether or not you want to incorporate this as part of your app.

And for the designers out there, if you have created brand new assets, you can plug them into the project in the Assets catalog.

And then, reference them using a PLIST file, and build the apps which can run across multiple devices.

And all this can be done without having to write any code.

We really hope that this tool can help bridge the gap between the nontechnical audience and our amazing and vibrant iOS app developer community.

In such a way that it can spur innovation in the field of healthcare centric apps that can have a meaningful and lasting impact on the lives of our users.

And with that, back to you, Sam.

Thank you, Srinath.

So, we're super excited about tools like these.

We think they can really accelerate the learning and the community, and bring your ideas for CareKit apps to life, that much faster.

So, with that, I'd like to go ahead and start wrapping up out talk, now, by reminding all of you that ResearchKit and CareKit are opensource.

And so, that means that they truly are what we make of it.

Yes. So, we are so excited about your participation, so far.

And of course, we have some ideas and suggestions of where we think that these could go, together.

So, first off, up until this point, ResearchKit and CareKit has focused solely on the participants and the patients.

But we understand that all this new data flowing through from these populations is extremely valuable to both researchers and care teams.

And so, that means it's really important for all of us to start thinking about the best way to visualize this population data for researchers.

So, that way they can gain the most insights from their research studies.

As well as for care teams, that way they understand how to best monitor or update care plans based on their patient data.

Additionally, if you start to build hooks into your apps, that let them integrate with different EMR systems.

We would love for you to build those hooks in such a way that you can bring them back to the community.

And let others leverage these capabilities.

And lastly, we feel that there's always room to build new modules for both of our frameworks.

And these modules could support things like rich educational content or social networking and community platforms.

That way, participants and patients can connect with each other.

As well as different reward systems, so that way, users can better understand their progress or engagement within your app.

And so, then, I know you guys all have ideas, as well.

And once you start developing these features and feel like they're in the place that you want to bring it back to the community.

Then that's where our team will step in and then work with you to enhance that feature and get it ready for our next release.

And we'll do that by providing you with accessibility testing, as well as localization and QA testing across all of our supported devices and platforms.

And once, we feel like the feature is ready and we've worked with you to get it there, we will then, merge it into the framework and get it ready for our next release.

So, I want to thank you all, again, for contributing and to continue to contribute.

We're really excited to see what you do with these new features and updates.

And so, I hope you all enjoyed hearing about the latest updates and features for ResearchKit and CareKit.

And if you want to get more information about this talk or links to our GitHub Repository, you can access them all here, at this URL.

And again, if you have time, to check out any of these other related sessions.

As we mentioned, tomorrow, we'll have a talk on Connecting CareKit to the Cloud, that I highly recommend you guys check out.

So, thank you all, for attending our talk.

I hope you all enjoyed this.

[ Applause ]

Apple, Inc. AAPL
1 Infinite Loop Cupertino CA 95014 US