Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

👋 New to our project? Be sure to review the OpenMRS 3 Frontend Developer Documentation. You may find the Map of the Project especially helpful. 🧑‍🏫

Node.js CI

OpenMRS ESM Patient Chart

What is this?

openmrs-esm-patient-chart is the patient chart frontend module and all its widgets. This creates a patient dashboard microfrontend for the OpenMRS SPA. It provides a simple dashboard with cards detailing the patient's information, such as vitals, demographic and relationships.


See the guidance in the Developer Documentation. This repository uses Yarn and Lerna.

To start the dev server for a specific package, run

yarn start --sources 'packages/esm-patient-<package>-app'

This will start a dev server for that package as well as esm-patient-chart-app.

To start a dev server running all the packages, run

yarn start-all

Note that this is extremely resource-intensive.

What is the layout of patient chart?

openmrs-esm-patient-chart consists of five parts: patient header, primary navigation, chart review, a workspace, and a right menu.

The patient header contains the patient banner, which displays basic information about the patient, and patient banner alerts, which sit just below the banner and provide relatively uninvasive reminders.

The primary navigation lives on the left side of the screen, in a slot provided by esm-primary-navigation-app. A link is created in that slot for each widget attached to patient-chart-dashboard-slot. It provides access to different parts of the chart review.

The chart review is the main part of the screen, which contains all the widgets.

The workspace is where data entry takes place. On mobile devices it covers the screen; on desktop it appears in a sidebar.

The right menu provides access to features that do not have their own pages, such as the notifications menu.

How do I configure this module?

Please see the Implementer Documentation for information about configuring modules.


See the Frontend Implementer Documentation for information about adding microfrontends to a distribution.