Giter Site home page Giter Site logo

nutrifhir's Introduction

NutriFHIR

Description

NutriFHIR is a provider-facing application that helps doctors/dieticians incorporate nutritional data into the care process. The application is SMART on FHIR compliant, and was developed and tested in the Cerner Sandbox.

How to Launch/Run Application

Launching from Cerner Sandbox

  • Clone/Fork NutriFHIR - git clone https://github.com/johnnybender/NutriFHIR.git
  • Go to https://fhir.cerner.com/smart/
  • Click Code Portal
  • Register to Cerner Care if you have not already, and log in
  • Click '+ New App'
  • Fill out the fields as follows:
    • App Name: Whatever you'd like
    • SMART Launch URI: ANYHOSTADDRESSHERE/launchProvider
    • Redirect URI: ANYHOSTADDRESSHERE/summary
    • App Type: Provider
    • FHIR Spec: Dstu2
    • Authorized: Yes
    • Scopes - Standard Scopes: Leave defaults checked
    • Scopes - User Scopes/Patient Scopes: Check read access to all resources listed
  • Register the application - Be sure to note down the ClientID listed once you register, as well as the Redirect URI you gave. Note, it takes 10-15 minutes for the application credentials to be registered in the Cerner Care System. So feel free to set a timer and wait.
  • In the NutriFHIR repository that you have cloned, open ./views/launch.html
  • Update lines 16 and 17 with your new client_id and redirect_uri
  • Navigate back to 'front-end' directory
  • npm install popper.js@^1.12.9
  • npm install
  • nodemon ./bin/www - Your local node server should now be running/hosting the application
  • On the Cerner Developer portal, click your the name of the application you just created, then click Begin Testing
  • Choose a patient and click next then launch. You may be required to provide credentials to Cerner's Millenium platform. Username is portal, password is portal. The application should now be visible and running in your browser.

-- Note, the repository comes with a Dockerfile. Feel free to use this file to create an image/skip the steps of installing popper.js and all the other modules.

Important Files

  • Material-Dashboard NPM package is used for styling/design Documentation
  • ./views/launch.html - Cerner/Epic/SMART on FHIR server accesses this page to initiate SMART on FHIR authentication. Any time you change permissions/scopes on your registered app via the Cerner Care website, you should make those changes in this file as well
  • ./views/summary.hbs - The page that gets redirected to once Oauth2 Authentication completes successfully. This is the main dashboard page of the NutriFHIR application
  • ./public/javascripts/summarySOF.js - First script that gets called once SMART on FHIR authentication is completed. It pulls all required patient/encounter data that will be used and populates static display data across all modules.
  • ./public/javascripts/vitalHandlers.js - These functions handle any clicks/mouseovers/plotting that need to occur with the vitals module
  • ./public/javascripts/staticDDP.js - These functions handle any clicks/mouseovers/plotting that need to occur with the diet indicators module
  • ./public/javascripts/dietEnvironment.js - This script interfaces with the google maps api to present the diet environment module. All functions required for plotting favorite stores/list handling is done here
  • ./public/javascripts/nutriSavingsController.js - Sample interface for hypothetical NutriSavings database
  • ./NutriFHIR_Schema.sql - Creates database according to NutriSavings schema

nutrifhir's People

Contributors

vpatnala avatar n8gr8 avatar

Stargazers

 avatar

Watchers

James Cloos avatar Justin Lewis avatar  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.