Wiki Spaces


Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack


Page tree
Skip to end of metadata
Go to start of metadata

The majority of the legacy user interface comprised administrative functions and a tabbed patient dashboard. As of OpenMRS 2.0, a new and more contemporary UI was introduced via a UI framework and the legacy UI was kept around for administrative functions that were not yet implemented in the new UI.
We plan to retire the legacy UI, but there are many implementations and modules that still rely on it. In order to maintain backwards compatibility, we want to move the legacy UI functions into a module that these implementations can install until they are able to migrate away from it.


You may encounter with some questions in your mind:

I can only see the new User Interface, Where is Legacy UI?

If you visit (username: admin, password: Admin123):

click on the System Administration app on the main dashboard:

and then click the Advanced Administration app, you'll see the legacy administration UI:

From the header on this legacy administration UI, you can click on the Find/Create Patient, Dictionary, and Reporting links in the header to see the legacy patient search, legacy concept dictionary management, and legacy reporting UIs:


Finally, if you search for a patient in the legacy Find/Create Patient page (e.g., "smith" and select first entry), you'll see the legacy Patient Dashboard:

These pages (legacy patient dashboard, patient search, dictionary, reporting, and administration) and the extension hooks they provided represent the majority of OpenMRS' legacy UI.  Looking under the hood, you would find that several of these (patient dashboard, dictionary management, and reporting) are already hooking into a legacy home page that provides the basic structure used by all of these pages and is hidden (replaced with the new home page) in OpenMRS 2.0+.

How should I use the module?

+ Add the omod to core which is deprived of the functions that are migrated to the omod
+ For eg: If we are moving  visits into the module from core:

  1. Module for Legacy UI contains the visits here - This omod to be deployed
  2. OpenMRS
    Core before migration - Visits are present
    Core after migration - You can't find visits here anymore - This is the version of OpenMRS to deploy the above omod.

What can I do to totally develop this module?

+ Contribute: You can fix issues on the JIRA project here.
+ Testing: You can compile the module to see if the epic's closed are implemented and are functioning as expected.
+ Documenting: If you encounter something important not documented, feel free to edit this module page.

Since most of the implementations of OpenMRS around the world are running OpenMRS 1.9, there will be dozens (if not hundreds) of implementations around the world thankful for this module.

In the end, Old is Gold. Right? So, here we are to let the Legacy continue!! Enjoy old UI (smile) 

  • No labels


  1. I'm having problems building the code from github. I cloned the code from github, did a mvn clean install but the tests are failing. I have attached the log of the 'mvn clean install'. Please look into the issue quickly as I am trying to the fix the LUI-50 ticket and I have managed to reproduce the bug on my OpenMRS 1.9 standalone but need the legacyui code to work to fix it.

      Log of the 'mvn clean install': log

  2. Yes everyone is facing that issue. There are 3 tests that are failing. To build it, type `mvn clean install -DskipTests=true`