General Guidance
For this portion of the init 3 lab you will deploy a SMART on FHIR app on two separate EMR sandboxes using GitHub Pages. This will help demonstrate the benefits of utilizing SMART on FHIR, to make it easier for apps to run on different EMR Systems. SMART on FHIR is a powerful approach to using FHIR to build out numerous smaller applications that work in conjunction with existing EHR systems, and is an important option to explore for building your projects.
Resources and Instructional Videos
Follow the video to build your own SMART on FHIR app on the Cerner sandbox and the SMART on FHIR sandbox.
CS6440 SMART on FHIR R4 Lab
(Links to an external site.)
Cerner SMART on FHIR Demo GitHub Repo: https://github.gatech.edu/cs6440-hub/lab-3-2 (Links to an external site.)
(Links to an external site.)
The SMART on FHIR Resource page provides additional information for SMART on FHIR.
The SMART on FHIR Client.js v2 documentation (Links to an external site) (Links to an external site.)
Cerner code console tutorial
(Links to an external site.)
Lab Exercises
1. Your primary task will be to edit the code to display the Patient's weight, height, medication requests, and enable the ability to add a note to the latest weight observation.
○ You will have to figure out how to retrieve the weight and height value for a patient using FHIR and display it on the app. See the Tips section for more information on the weight coding.
○ Display a list of medication requests of the patient, they can be both active and stopped medications
○ Enable the functionality to add a note to an existing weight
observation resource. The note must include the authorString, time, and text fields. The text should be retrieved from the input field of the app. The dateTime data type should be in the format YYYY-MM-DDThh:mm:ss+zz:zz
2. Launch your application through the Cerner sandbox launcher.
3. Launch your application through the SMART launcher. (NOTE: You may have to deselect "Simulate launch within the EHR user interface" in the top left corner of the options pane. You should also ensure you have selected the correct FHIR server version.)
Please see the "Submission" section for what you will be submitting for this assignment.
Setting up your Cerner Account
Set up your Cerner Code account here https://code.cerner.com/developer/smart-on-fhir/apps
(Links to an external site.)
1. Select Create New Account if you do not already have one.
2. After logging in, a dashboard is displayed and you can create a new app.
3. Click on new app which will create a sandbox environment to run your new app. (It might take 10min for your app to be activated)
Instructions for Setting up the App on your Georgia Tech GitHub Account
1. Go to the Cerner SMART on FHIR template repo at https://github.gatech.edu/cs6440-hub/lab-3-2 (Links to external site.)
2. (Links to an external site.) 3. .
4. Download the content of the repo as a zip. (Click on the green "Code" button
in the top right corner and select "Download Zip".)
5. Extract the zip into its own directory. (Ex: C:\6440\lab-3-2l)
6. Create a repository in your GT GitHub account named "lab-3-2", and set the repository to Public.
○ NOTE: If you use a different repo name you will need to adjust the sample URLs provided below appropriately.
7. From command line, navigate into the directory you extracted the code to and run the following commands (adapted for simplicity from the generic GitHub repo initialization instructions):
○ git init
○ git add .
○ git commit -m "first commit"
○ git remote add origin https://github.gatech.edu/[YOUR GT USER NAME HERE]/lab-3-2.git
○ git push -u origin master
8. In your repo settings, scroll down to the "GitHub Pages" section. Under Source, select the master branch. This will enable github pages and give you your GH Pages url above in the form of "https://github.gatech.edu/pages/[YOUR GT USER NAME HERE]/lab-3-2/".
○ NOTE: If you choose to you may set this up in a separate
GH-Pages branch, though this is likely not required for this lab due its simplicity.
9. You should then attempt to navigate to the health check URL which can be
found at "https://github.gatech.edu/pages/[YOUR GT USER NAME HERE]/lab-3-2/health.html", which will show a thumbs up GIF.
Additional Tips
There are multiple codes for weight that are used in different contexts, and the resources in the test servers may include patients which utilize multiple of these codes. It is recommended that you sort the LOINC search results by "rank" and select the code that is the more commonly used one to represent weight. For an advanced approach, you may wish to display all viable weight codes, noting the usage of each in the HTML, though this is optional.
For the Medication request and update-note-for-an-observation functionality you will have to update the scope in the launch.html file in order to get your app to work in the Cerner sandbox.
For local testing it is easier to use create a FHIR client with a test patient from the smart on fhir sandbox which is open. https://r4.smarthealthit.org (Link to external site.)
(Links to an external site.)
" This allows you to test your app faster without the need to publish to github pages and go through the sandbox authentication. We have setup a data-get-test.js file with a sample test patient you can utilize. In the index.html file you will just have to reference this javascript file instead of the existing one.
The app template utilizes smart-on-fhir client.js v2 and the api docs can be found here http://docs.smarthealthit.org/client-js (Link to external site.)
(Links to an external site.)
For the task to add an annotation you can learn more about the datatype here https://www.hl7.org/fhir/datatypes.html#Annotation (Link to external site.)
(Links to an external site.)
. You can also review the observation resource definitions. https://www.hl7.org/fhir/observation-definitions.html#Observation.note (Link to external site.)
(Links to an external site.)
CS 340 Milestone One Guidelines and Rubric Overview: For this assignment, you will implement the fundamental operations of create, read, update,
Retail Transaction Programming Project Project Requirements: Develop a program to emulate a purchase transaction at a retail store. This
7COM1028 Secure Systems Programming Referral Coursework: Secure
Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip
CS 340 Final Project Guidelines and Rubric Overview The final project will encompass developing a web service using a software stack and impleme