A starter application for building a scheduling app on Medplum.
This example app demonstrates the following:
- How to build a scheduling app on Medplum for providers that manages the lifecycle of appointments, integrates with patient and practitioner data.
- Creating
Slotsto manage the provider availability. - Managing the
Appointmentlifecycle: Creating, rescheduling, and canceling appointments. - Creating an
Encounterafter an appointment is completed. - Using Medplum React Components to build a scheduling app.
This repo is organized into two main directories: src and data.
The src directory contains the entire app, including pages and components directories. In addition, it contains a bots directory which has Medplum Bots for use. The bots in the example directory are intended to be modified or extended by users, while those in core can be used to handle core workflows without modification.
The data directory contains data that can be uploaded for use in the demo. The example directory contains data that is meant to be used for testing and learning, while the core directory contains resources, terminologies, and more that are necessary to use the demo.
- Patients page listing all the patients in the system.
- Patients chart page with 3 panels:
- Clinical Chart
- Details (including Appointments and Encounters)
- Actions (with a button to create a new appointment)
- Schedule page to manage the provider availability and create new appointments.
- Appointment page listing all appointments for the provider.
- Appointment details page to view and manage the appointment lifecycle.
If you haven't already done so, follow the instructions in this tutorial to register a Medplum project to store your data.
Fork and clone the repo to your local machine.
If you want to change any environment variables from the defaults, copy the .env.defaults file to .env
cp .env.defaults .envAnd make the changes you need.
Next, install the dependencies.
npm installThen, build the bots
Warning
Bots are not on by default for Medplum projects, make sure they are enabled before proceeding.
npm run build:botsThen, run the app
npm run devThis app should run on http://localhost:3000/
Click Upload Core ValueSets in the app navigation menu and then click the upload button.
Click Upload Example Bots in the app navigation menu and then click the upload button.
[Optional] Click Upload Example Data in the app navigation menu and then click the upload button.
Medplum is an open-source, API-first EHR. Medplum makes it easy to build healthcare apps quickly with less code.
Medplum supports self-hosting and provides a hosted service. Medplum Hello World uses the hosted service as a backend.
- Read our documentation
- Browse our react component library
- Join our Discord