O3 RefApp v3.4.0 Release Notes

Release Information

  • Release Date: May 22, 2025
  • Release Manager: @dkigen

:tada: What’s New

After weeks of dedicated work from our global community, we’re excited to announce OpenMRS O3 v3.4.0! This release brings significant performance improvements, new clinical features, and a major design system upgrade that makes O3 faster and more intuitive for our users.

:flashlight: Key Highlights

:rocket: Major Performance Improvements

We’ve tackled some long-standing performance issues that were affecting daily workflows:

  • Faster Patient Chart loading: Fixed cascading re-renders caused by multiple data fetches, making patient navigation noticeably snappier
  • Registration form responsiveness: Eliminated sluggish typing and delays when editing patient records - updates now happen instantly

:bar_chart: Smarter Clinical Alerts with Age-Based Vitals

Vitals like blood pressure and heart rate now use age-appropriate thresholds for clinical alerts. A heart rate of 100 might be normal for a child but concerning for an elderly patient—the system now knows the difference. This feature requires Platform 2.7; older versions continue using previous fixed thresholds.

:hospital: Complete Ward Management Solution

Introducing the new Ward app for managing ADT (admission/discharge/transfer) workflows:

  • Full inpatient workflow support
  • Optional bed assignment features
  • Separate bed management interface for configuring ward layouts
  • See the Ward app README for setup instructions

:pencil: Edit and Delete Vitals & Biometrics

A long-requested feature is finally here! Clinicians can now:

  • Modify incorrect vitals and biometrics readings directly from data tables
  • Delete erroneous entries that could impact clinical decisions
  • Important: Editing or deleting affects both vitals AND biometrics together since they’re recorded as a single encounter

:artist_palette: Modernized Design System

Upgraded to Carbon v1.76.0 across all apps, bringing:

  • More consistent visual styling
  • Better accessibility features
  • Improved performance with optimized stylesheets
  • Foundation for future design enhancements

:spiral_calendar: Standardized Date Pickers

All date input fields now use the same component, ensuring consistent behavior and better support for different languages and calendar systems.


:warning: Breaking Changes

Patient Chart Data Flow: We’ve refactored how patient data flows through Patient Chart components. The usePatient hook now only runs once at the root level instead of multiple times throughout the component tree.

Migration needed: Extensions should receive patient data through props rather than calling usePatient directly. This improves performance but may break extensions that directly call usePatient.


:hammer_and_wrench: For Implementers

Age-Based Vitals Configuration

Platform 2.7+ implementations can leverage the new conceptreferencerange endpoint to fetch age-specific vitals metadata. This enables proper validation across vitals headers, data tables, and biometrics workspace forms.

For Platform 2.6 and below: Fallback behavior ensures you’ll continue receiving the previous hardcoded reference ranges—no changes needed.

Ward App Setup

The Ward app requires specific configuration and prerequisites. Please review the setup documentation here and here before deployment in production environments.


:chart_increasing: Release Metrics

  • Approximately 266 Pull Requests merged
  • 10+ Organizations contributed
  • 50+ Individual contributors
  • 27% of contributions from OpenMRS Global Support team

:link: Technical Details

Component Versions

Frontend Modules

Backend Modules


:rocket: Get Started

  1. Try the demo: Visit https://o3.openmrs.org with credentials admin/Admin123
  2. Download: Get the latest distribution at Download – OpenMRS.org
  3. Upgrade guide: Review breaking changes and migration steps above
  4. Get help: Join us in #openmrs-helpdesk on Slack or post questions here on Talk

:crystal_ball: What’s Next

  • React v19 upgrade (deferred from this release)
  • Major tooling improvements - migrating from Webpack to Rspack, Switching from Jest to Vitest

This release represents the collaborative effort of our global OpenMRS community. Thank you to everyone who contributed code, testing, documentation, and feedback to make O3 better for healthcare workers worldwide!

Questions about this release? Drop them below or reach out on Slack. Read the full list of attributions on the Release notes page in the wiki.

3 Likes

Is 3.4.0 now working withe openmrs-sdk install; under jdk 11 or 17 the bahmni module failed to install the installation would fail; I will try it out as I’m limited to starting with 3.2.1 and 2.6.x currently and was planning to upgrade to 2.7.4 and 3.4 as well.