/
Release Notes 3.2.1 (2025-01)

Release Notes 3.2.1 (2025-01)

📆 Release Date: 2025-01-23

⚠️ Breaking Changes:

  1. Renamed esm-patient-labs-app to esm-patient-tests-app → we expect non-lab-type results (like microbi, radiology, and more) to be handled here as well). Details in #1935.

  2. Retired the ConnectedExtension concept. Details in #1154.

  3. Migrate React Form Engine from Formik to React Hook Form. Details in #349.

  4. Renamed the patientResultUrl property in the Patient Search configuration schema from patientResultUrl to patientChartUrl. This property represents the URL to navigate to when a patient is selected from the search results. Details in #1345.

Where to find it: Demo at o3.openmrs.org (admin/Admin123) or download here: openmrs.org/download/

 


👷 Contributors

Thank you so much to the following contributors - you make releases like this possible! (Ordered alphabetically by Organization affiliation)

  • CSaude: @Yassin Nurmahomed Welcome CSaude-Mozambique team!

  • Health IT (UoN): Felix Kiprotich

  • IntelliSOFT: @munyua1 @samstar10

  • Mekom: @Kakumirizi Daud @Vineet Sharma @Usama Idriss Kakumba @Siddharth Vaish

  • Madiro: @Pius Rubangakene @Joshua Nsereko

  • OpenMRS Support: @Dennis Kigen @Brandon Istenes @Samuel Male @nethmi @Veronica Muthee @Jayasanka Weerasinghe@Daniel Kayiwa

  • Palladium-Kenya: @itskios09 @Kennedy Makombe @Donald Kibet

  • PIH: @Chi Bong Ho @Mark Goodrich @Fiona Anderson

  • UCSF: @Jovan Ssebaggala @Cynthia Kamau @Hadijah Kyampeire @JONATHAN AJAL ODORA @Jamie Arodi

  • UW ITECH DIGI: @Ian Bacher @Reagan patrick Makoba

  • Independent Contributors: @flosell @Mujuzi Moses @SSEBAANA Suubi Joshua @amosmachora @Mutagubya Jonathan @Bhargav Kodali @cnwadike D-matz @Juliet Wamalwa @Njidda Salifu @vijaykv @omosh @twiine @virajwathsalag @williemutua @McCarthy Mutebi @chintu @harshthkkr @Johannes Heinzl @itskios09

Contributor Metrics

image-20250123-061754.png
Breakdown of contributors by Organizations, based on # of PRs committed in this release.

# PRs included: 243

# of Orgs involved: 9

% from OpenMRS Inc. Global Support: 33%


🔦 Highlights for Implementers

Login Page Improvements: Redesigned single page flow.

Redesigned single-page login flow

  • The login experience has been redesigned as a single-page flow for better user experience. When a user first arrives, they see only the username field. After entering their username, the password field smoothly appears below it.

    The login page features a new attribution footer, positioned discretely in the bottom left corner. This footer contains four distinct elements in sequence:

    • The text "Built with"

    • The standard OpenMRS logo sprite

    • The descriptive text "An open-source medical record system and global community

    • A "Learn more" link that takes users to the OpenMRS website

Customizable Implementation Logos: Implementers can now add custom logos to the Login page footer via configuration for additional branding customization and attribution purposes.

Customizable implementation logos

You can now add custom logos for your implementation to the Login page through configuration. These logos appear in the footer, displayed sequentially after the default OpenMRS sprite.

Configuration details

Add logos by including an additionalLogos array in the login page configuration:

{ "footer": { "additionalLogos": [ { "url": "path/to/logo.png", "altText": "Organization Name", "width": 100, "height": 50 } ] } }
  • Each logo object includes:

    • url - direct path to the logo image

    • altText - accessible description of the logo for screen readers

    • width - logo width in pixels

    • height - logo height in pixels

These logos appear in the same orders as they are defined in the array. All the logos are positioned after the default OpenMRS sprite. Each logo maintains its specified dimensions while respecting responsive design principles. The list of logos is then displayed in the bottom right hand corner of the login page, opposite the attribution footer.

These changes provide a balanced way for implementations to maintain both OpenMRS identity and their own individual branding on the login page.

Patient Header Redesign: Clearer information hierarchy.

The Patient Header has been updated with improved visual elements and a clearer information hierarchy:

Patient Avatar

  • Has three distinct states:

    • Loading: Shows while the avatar image is being fetched

    • Empty state: Displays a placeholder when an image source exists but fails to load (possibly due to a server issue)

    • Loaded state: Presents the patient image in a consistent 56px × 56px format

Patient Information

  • Improved gender representation through the following elements:

    • Icon matching patient's gender

    • Abbreviated gender text beside the icon

    • Refined identifier display:

    • Primary identifier shown in a gray pill container

    • Secondary identifiers presented in a clean, middot-separated list

Interactive Elements

  • Updated details panel toggle that now reads "Show more" and "Show less". Previously, the toggle button label read as "Show details" and "Hide details".

Vitals Header Refinements: Refined to include a simplified overdue vitals indicator with more granular durations and clearer indicators for abnormal vitals.

The Vitals Header has been refined to include the following design changes:

  • Simplified overdue indicator:

    • Removed the "Overdue" text and Time icon.

    • Replaced those with a pill with a red background and text showing the number of days overdue. The overdue durations are now based on the following thresholds:

      • 1-7 days overdue: "These vitals are X days old"

      • Up to two weeks overdue: "These vitals are over one week old"

      • Over two weeks overdue: "These vitals are out of date"

  • Improved contrast and readability for abnormal values:

    • Changed the color and font weight of arrow icons used to flag abnormal values to align more closely with the designs.

  • Improved spacing between elements in the header for improved readability.

Patient Search Enhancements: Added advanced filtering by attributes like strings, concepts, and locations; and, configurable options for customizing search fields, restored recently searched patients functionality

Recently Searched Patients

We’ve restored the ability to view recently searched patients in the Compact Patient Search UI. This logic is configurable and implementers can toggle it by setting the showRecentlySearchedPatients configuration property in the Patient Search app’s configuration schema.

Advanced Search Filtering

It is now possible to filter search results based on multiple person attribute types including strings, concepts, and locations for more granular searches.

Printable Prescriptions: Added ability to print prescriptions, so if drugs are not available at the site, the patient can seek them elsewhere.

Visit Location Tags: Added location tags → ensures every designated login location has a visit location tag (for single-location sites) or has a visit location in its ancestor tree.

Lab Frontend Module: Provides basic laboratory functionality for sites without a dedicated Lab Information System (LIS).

React Form Engine: Performance and Stability Improvements: Migrated from Formik to React Hook Form and adopted the OpenMRS expression engine for evaluating expressions.

Form Builder Improvements: Reordering of questions is now possible across sections via drag-and-drop. Plus new field rendering types, and easier answer concepts.

Left Panel Sub-menus: New reusable NavGroup component in the style guide.

Data Fetching Performance Improvements: Optimized data revalidation strategy that reduces the number of network requests sent to the backend.

Various i18n Improvements: More translations for French, Spanish, Portuguese, Quechua, Vietnamese, and Chinese!


📸 Example Visual Changes

Login Flow

image-20250116-223342.png
Password field now shows on the login screen instead of a separate page

Navigation

Lab Tests Management

Printing Prescriptions

Patient Search

Better Vital Sign Alerts

Before:

 

After:

Better Patient Header

Before:

After:

 

 

 

 

 

 


🔍 Detailed Changelog

Code:

Tickets:

https://openmrs.atlassian.net/issues/?jql=fixVersion%20%3D%20%22RefApp%203.2.0%22%20AND%20resolution%20!%3D%20Unresolved