This project-based course will provide a comprehensive overview of key requirements in the design and full-stack implementation of a digital health research application. Several pre-vetted and approved projects from the Stanford School of Medicine will be available for students to select from and build. Student teams learn about all necessary approval processes to deploy a digital health solution (data privacy clearance/IRB approval, etc.) and be guided in the development of front-end and back-end infrastructure using best practices. The final project will be the presentation and deployment of a fully approved digital health research application.

Course logistics

Date/Time T/Th 4:30PM - 5:50PM
2020-2021 Winter
Location Via Zoom - Access via Canvas or here
Units 3 Ltr (CR/NC and Med option available)
Instructors Oliver Aalami (aalami@stanford.edu)
James Landay (landay@stanford.edu)
Santiago Gutierrez (santig@stanford.edu)
Michael Hittle (mhittle@stanford.edu)
TAs Varun Shenoy (vnshenoy@stanford.edu)
Aish Venkatramani (avenkatr@stanford.edu)
Office hours Via Zoom
Syllabus View
GitHub Classroom
Slack Open
Explore courses CS342/MED253


Week 1 (01/12 - 01/14)

1A Overview of Course

Introducing our projects for this quarter.

Submit your project preferences!
1B What makes health apps different?

Topics: Data privacy; HIPAA; DRA; IRB protocols

Assignment #1: Getting Started (due by Jan 26th)

Week 2 (01/19 - 01/21)

2A Basics of iOS Development and Git

Live-coding a simple app using SwiftUI

2B Intro to ResearchKit

What is ResearchKit? How can we use it in our apps?

Assignment #2: ResearchKit + Firebase (due by Feb 2nd)

Week 3 (01/26 - 01/28)

3A Firebase and the CardinalKit Framework

What "backend" will we be using? + cardinalkit.org

3B Electronic Health Records, FHIR

πŸ‘₯ Guest lecture by Dr. Ricky Bloomfield (Apple)

Assignment #3: App (alpha)
Midterm Presentation (on Feb 11th)

Week 4 (02/02 - 02/04)

4A Mentor Day

Meet with your mentors in-class.

4B Google Cloud Healthcare API

πŸ‘₯ Guest lecture by Dharmesh Patel (Google)

Week 5 (02/09 - 02/11)

5A Firebase Security, Web Portals, & Stanford TDS

πŸ‘₯ Guest lecture by Garrick Olson and Lei Wang (TDS)

5B Midterm Presentations!

Teams will share their apps! (alpha)

Week 6 (02/16 - 02/18)

6A Intro to CareKit

πŸ‘₯ Guest lecture by Erik Hornberger and Gavi Rawson (Apple)

6B CareKit, ResearchKit, and GCP Firestore

Scheduling RK surveys and visualizing results stored in the cloud.

Assignment #4: App (beta)

Week 7 (02/23 - 02/25)

7A Firebase + cloud functions and beyond!

πŸ‘₯ Guest lecture by Alex Astrum, Google

7B Firebase + analytics with BigQuery

πŸ‘₯ Guest lecture by Alex Astrum, Google

Week 8 (03/02 - 03/04)

8A HealthKit & Data Studio

What is HealthKit, and how can we use it? How can we analyze results?

8B Mentor Day

Meet with your mentors in-class.

Assignment #5: App (release)

Week 9 (03/09 - 03/11)

9A & 9B App Workshops

In-class feedback and development. Discussion and implementation of assignment #4 and #5 advanced topics.

Week 10 (03/16 - 03/18)

10A Mentor Day

Meet with your mentors in-class.

10B Final Presentations

Teams will share their final apps!


Development of App to Facilitate Post-Kidney Transplant Outpatient Care

Led by Marc L. Melcher, MD, Ph.D., Department of Surgery (melcherm@stanford.edu)

The goal of this project is to develop an interactive mobile app that facilitates the complex outpatient care of kidney transplant patients to increase medication compliance and to improve management of comorbidities, both of which are essential to the ultimate success of kidney transplantation. To achieve this, the app would provide patient education and collect important post-operative data. The data will be used to create bi-weekly reports that will guide the post-operative care of patients for the first 30 days after transplantation.

Digital Health Cardiovascular Disease Management System

Led by Paul J. Wang, MD and Meg Babakhanian, PhD (pjwang@stanford.edu, mbabakha@stanford.edu)

The goal of the project is to leverage digital health technology to create a platform for management of a range of cardiovascular diseases, from prevention to disease management. The project will create a web-based platform as the provider-facing user interface and patient-facing Apps for patient engagement using their iPhones to allow for cardiovascular disease management. ECGs from Apple Watch will be used to document the electrocardiogram.

Hybrid Physical-Digital Spaces

Student-led Team

Researchers in the Stanford Human Computer-Interaction Laboratory, in conjunction with other departments on campus, are working on rigorously studying the ways in which features of indoor space design (natural light, natural materials, and diverse representations) influence occupant outcomes (stress, feelings of belonging, creativity, and pro-environmental attitudes).

Women’s Derm Health

Student-led Team

Many dermatological conditions such as acne flare up due to multiple influences such as hormones, medications, dietary factors, stress or other environmental conditions. This project intends to track and study these multiple factors in relation to serial skin photos taken in a person longitudinally. The intention is to use computer vision and machine learning to draw links between the input variables and the images.


Getting Started Swift (language guide)
Creating Interfaces in iOS with SwiftUI (tutorials)
SwiftUI (cheat sheet)
Course Website

NOTE: you might need to be logged in to your Stanford account to access some content.

Looking for class content for previous years? 2019