Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Narrative Summary

Table of Contents
minLevel1
maxLevel2
include
outlinefalse
indent
exclude
typeflat
separatorbrackets
class
printabletrue

📆 Release Date: 2025-01-__

⚠️ 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) Patient Management: ______ Details in ______.

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

🔦 Highlights for Implementers

Performance Improvements: Optimized Data Revalidation Strategy

Expand
titleDetails: Performance Improvements

We've implemented a more conservative caching approach by disabling automatic data revalidations in the global SWR configuration. This change:

  • Reduces unnecessary network requests for patient chart data that rarely changes

  • Improves development debugging by reducing network noise

  • Enhances UI responsiveness during data mutations

Technical details:

  • We've modified the global SWR configuration to disable most automatic revalidations by default

  • We've maintained the ability to override the default caching strategy through child SWRConfig components. The SWRConfig component merges configurations from child components with the parent configuration, meaning that any child component can override the default caching strategy by providing its own configuration options. This means that it's still possible to opt-in to more aggressive automatic revalidation if needed.

With this change, we're seeing a pretty significant performance improvement in loading the app and its perceived snappiness.

Platform Upgraded: Now using Platform version 2.7 → includes security fixes and boosts developer performance with 2x-faster boot-up speed.

Login Page Improvements: Summary text here

Expand
titleDetails: Login Page improvements

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

  • 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

    Implementation-specific logos, when configured in the login page configuration, will appear in the bottom right corner of the page, creating a balanced layout opposite to the attribution footer. These logos can be customized through the login page configuration.

    All elements in the footer maintain consistent styling with the rest of the interface while ensuring clear visibility and accessibility.

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:

Code Block
{
  "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.

Home Page Navigation: Nav Group’s are now in Styleguide → enables creating Nav groups in Home page

...

Performance:

Top Visuals

  • Section for highlighting 2-3 interesting pictures of UI things that changed

👷 Contributors

Alphabetically by Organization affiliation:

  • ICRC:

  • Mekom:

  • Madiro:

  • OpenMRS Support:

  • PalladiumKenya:

  • PIH: Chi Bong Ho

  • UCSF:

  • UW ITECH DIGI: Ian Bacher

  • Independent Contributors: _____

Detailed Changelog

(blue star) Code:

...

Expand
titleDetails: Home Page Navigation

Patient Search enhanced: Added advanced filtering by attributes like strings, concepts, and locations; and, configurable options for customizing search fields.

Patient Header: Clearer visuals, including Bolded primary ID.

Expand
titleDetails: Patient Header

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".

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

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.

Patient Lists: Auto-updates: Added mutation to update patient lists → ensures new patients are added seamlessly by updating cohort data after submission.

Form Builder: Easier Answer Concepts: Implementers can now manually add answer concepts → allows users to search for and add specific concepts as answers to coded questions, similar to adding a backing concept.

Form Builder: Markdown support: Enables creation and editing of questions with Markdown’s rich text formatting.


📸 Example Visual Changes

Lab Tests Management

image-20250116-223541.pngImage Added

Prescriptions Printing

image-20250117-024221.pngImage Added

Patient Search

image-20250117-025825.pngImage Added

🔍 Detailed Changelog

(blue star) Tickets:

...

...

...

⚠️ Breaking Changes

eg

...