GithubHelp home page GithubHelp logo

bluebutton.js's Introduction

BlueButton.js

BlueButton.js is JavaScript library to help make working with healthcare data easier. Try the demo.

This project is under heavy development! Until a v1 release, the public API will change, a lot.

Getting Started

To use BlueButton.js with a health document, start by creating a Blue Button document object by passing the CCD XML to BlueButton:

var bb = BlueButton(xml);

The document object, bb in this example, now exposes all CCD data through a simple and consistent interface. Each section of the document can be accessed using its associated method.

Document Sections

The health record sections are available using the following public methods. JavaScript objects representing the patient data for that section is returned from each method:

// Returns personal information and demographics
bb.demographics();

// Returns allergies and alerts
bb.allergies();

// Returns encounters
bb.encounters();

// Returns a list of immunizations
bb.immunizations();

// Returns a list of laboratory results, organized by panel
bb.labs();

// Returns a list of medications
bb.medications();

// Returns the problem list
bb.problems();

// Returns a list of procedures
bb.procedures();

// Returns a list of vital readings, grouped by date
bb.vitals();

Information about the document itself can be accessed by using the document method:

// Returns an object containing information about the CCD document
bb.document();

JSON

Each section contains a convenience json() method.

// Returns a JSON representation of demographics
bb.demographics().json();

// Returns a JSON representation of the entire document
bb.document().json();

CommonJS and AMD support

BlueButton.js uses a UMD wrapper to support NodeJS and AMD module loaders like RequireJS.

Example using Node

var fs = require('fs');
var BlueButton = require('bluebutton');

var xml = fs.readFileSync('./example/xml/ccd.xml', 'utf-8');
var bb = BlueButton(xml);

// Log demographics JSON object
console.log(bb.demographics().json());

Example using RequireJS

require.config({
  paths: {
    bluebutton: '../bower_components/bluebutton.js/build/bluebutton',
    text: '../bower_components/text/text',
    examples: '../examples'
  }
});

require(['bluebutton', 'text!examples/xml/ccd.xml'], function (BlueButton, xml) {
  'use strict';

  var bb = BlueButton(xml);
  
  // Log demographics JSON object
  console.log(bb.demographics().json());
});

Example using Browser Global

<body>
  <script src="./bower_components/bluebutton/build/bluebutton.js"></script>
  <script>
    var xhr = new XMLHttpRequest();
    xhr.open('get', './examples/xml/ccd.xml', false);
    xhr.send();

    var bb = BlueButton(xhr.responseText);

    // Log demographics JSON object
    console.log(bb.demographics().json());
  </script>
</body>

Creating a Build

Run grunt to build the library. All builds are placed in the build/ directory.

Be sure to version up package.json, bower.json, and add any changes to History.md before releasing.

bluebutton.js's People

Contributors

blacktm avatar robdodson avatar thetylerhayes avatar jmandel avatar marks avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.