Josh Mandel edited this page Jul 11, 2013 · 23 revisions

Growth-tastic: A BlueButton+ Tutorial

The Scenario

Growth-tastic has built a killer app where parents watch their children grow. The dev team has worked out the user experience including visualization of a child's weight, height, and body mass index. Now all they need is a way to fuel the app with health data from the pediatrician's office.

(For developers interested in learning more about the real growth chart visualization used in our fictional Growth-tastic tutorial: we started with the open-source SMART Pediatric Growth Chart. It's a browser-based HTML5/JavaScript app written to take advantage of data from a SMART Health IT system via the SMART API from Harvard Medical School / Boston Children's Hospital. For this tutorial, we've ripped out the data-access layer and will replace it, step-by-step, with BlueButton+ data.)


This hands-on tutorial will show you how to integrate healthcare data into your app, using BlueButton+. Following the progress of "Growth-tastic" (a fictional company with a slick patient-facing app), we'll:

Learn two ways to get the data:

  • BlueButton+ Push (Direct Project secure e-mail)
  • BlueButton+ Pull (REST and OAuth2)

Practice using the data:

  • Consolidated CDA format (C-CDA)

By the end of this tutorial, you'll have a functional Pediatric Growth Chart app fueled by BlueButton+ data. Along the way, you'll learn about a variety of open-source tools that can simplify the process.

Our Plan for Today

Version 0: Fixture

We'll start with a simple web app that displays a growth chart using hard-coded sample data.

Version 1: BlueButton+ Push

We'll extend the app to obtain data via BlueButton+ Push, a protocol based on the Direct Project's specification for secure e-mail. We'll also learn how to use Consolidated CDA, the XML format in which data are delivered.

Version 2: BlueButton+ Pull

After implementing BB+ Push messaging, we'll take a quick look at a new specification that simplifies the process of obtaining patient data. BB+ Pull help users authorize apps to access data via a familiar OAuth2 workflow. Authorized apps can then request clinical summary documents via a RESTful HTTP interface.

Enough planning! Without further ado, let's jump into the tutorial.

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.