Release Information
- Release Date: May 22, 2025
- Release Manager: @dkigen
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.
Key Highlights
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
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.
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
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
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
Standardized Date Pickers
All date input fields now use the same component, ensuring consistent behavior and better support for different languages and calendar systems.
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
.
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.
Release Metrics
- Approximately 266 Pull Requests merged
- 10+ Organizations contributed
- 50+ Individual contributors
- 27% of contributions from OpenMRS Global Support team
Technical Details
Component Versions
Frontend Modules
- Patient Chart v10.0.0
(major - breaking change)
- Core v6.3.0 (minor)
- Patient Management v8.4.0 (minor)
- Form Builder v3.1.0 (minor)
- Dispensing v1.7.0 (minor)
Backend Modules
Get Started
- Try the demo: Visit https://o3.openmrs.org with credentials admin/Admin123
- Download: Get the latest distribution at Download – OpenMRS.org
- Upgrade guide: Review breaking changes and migration steps above
- Get help: Join us in #openmrs-helpdesk on Slack or post questions here on Talk
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.