Versions Compared

Key

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

OpenMRS is both a software and a community. As a software, it serves as an electronic medical record system (EMR) originally designed for developing countries. Through its open source community it has grown into a medical informatics platform used on every continent. This page will provide an introduction to the OpenMRS software: our electronic medical record and the platform supporting it.  If you are interested in learning more about the OpenMRS community, you may try starting here.

Why OpenMRS?

Everyday millions of people are infected with diseases such as HIV/AIDS, multi-drug resistant tuberculosis, and malaria. In developing countries, lack of education and resources raises the number of preventable deaths. To handle the needs of treatment an efficient information management system is needed but many developing countries still use paper records. OpenMRS was created as a response to these challenges in developing countries.

Initially, OpenMRS was built to support HIV care in a couple of settings (in Kenya and Rwanda); however, from the very beginning we knew that it would be artificial to create a vertical HIV-specific solution, since patients with HIV also have other medical problems.  We also knew that the same programs trying to treat HIV were simultaneously confronting malaria, tuberculosis, maternal health, primary care needs, and many other issues.  Therefore, we designed OpenMRS to be a generic medical record system that can support the care of patients, gathering observations, encounters, notes, and other data from the healthcare system and rendering those in summaries, reports, and data views that would improve the effectiveness of the people using the system.

What is OpenMRS?

OpenMRS is a Java-based, web-based electronic medical record.  We started from a simple (at least it used to be simple) data model, wrapped that into an API, and then built a web-based application that uses the API.  The OpenMRS API works like a "black box," hiding the complexities of the data model beneath it and ensuring that applications and modules using the API work with a similar set of business rules for managing the electronic medical record system data.  See our technical overview page for more details.

At the heart of OpenMRS is a concept dictionary.  This dictionary, much like a typical dictionary, defines all of the unique concepts (both questions and answers) used throughout the system.  Using combinations of questions and answers, we can define observations (observable data) as well as forms that gather multiple observations within a single encounter.  Our first systems were built by taking very carefully considered paper forms and turning them into electronic forms by cataloging all of the concepts on the forms (questions and answers) and then organizing these into an electronic schema (hierarchy) that represented all the data on the paper forms.  By doing this, we could easily capture all of the data from the paper forms into the computer system as discrete, coded data that the computer could understand and then begin using those data to improve patient care.  Over time, we are seeing more cases where data are being directly entered into the system through web-based forms or mobile solutions.

OpenMRS is constructed to support modules. Using modules, implementations are able to modify the behaviour of the system to meet their local needs without everyone having to agree on a single approach (i.e., allowing us to avoid the failure-prone "one hammer to fit all nails" approach). You can see the list of available modules in our module repository. Modules have full access to the system, so they can add tables in the database, alter behavior of the API, and/or add or change web pages in the web application as needed to meet their needs.

OpenMRS has grown from few organizations to a massive collaborative effort. It has always been based on the principles of openness and sharing ideas, software and strategies for deployment and use. OpenMRS is now in use in clinics in Argentina, Botswana, Cambodia, Congo, Ethiopia, Gabon, Ghana, Haiti, Honduras, India, Indonesia, Kenya, Lesotho, Malawi, Malaysia, Mali, Mozambique, Nepal, Nicaragua, Nigeria, Pakistan, Peru, Philippines, Rwanda, Senegal, South Africa, Sri Lanka, Tanzania, The Gambia, Uganda, United States, Zanzibar, Zimbabwe, and many other places. It is supported by individuals, organizations, government aid groups, NGOs, and for-profit and non-profit corporations.

Feel free to browse our wiki and don't hesitate to let us know where things can be improved. More importantly, consider rolling up your sleeves and help us improve. Join a mailing list or hop into IRC or discover our Q&A site and share your questions/concerns. If you're a developer, check out our New Developers' Guide. If you are interested in implementing OpenMRS, check out our Implementors' Guide and How to get support.  We're all in this togetherHello!

Welcome to the first section of this space. This section introduces you to OpenMRS and what to expect from this wiki. We’ve organized this wiki so that everyone using OpenMRS can easily access and enjoy our documentation, giving you a clear understanding of who we are and what we do. Once again, welcome!

In this section, you'll learn what OpenMRS is and get a glimpse of our history. If you're new, don’t worry—we’ve got you covered with our Guide for the New and Curious. From there, you can dive into some issues to get your hands dirty. And if you come across any unfamiliar terms, our Glossary is here to help.

Documentation Profiles

We’ve tailored our documentation to suit the different types of people in our community. Find the profile below that best matches your role, and you'll discover the relevant resources to get started:

  • Newcomers: Interested in learning about and supporting OpenMRS. 

  • Users: Healthcare professionals (clinicians, researchers, administrators, etc.) currently using or interested in using OpenMRS.

  • Implementers: Supporting the installation, customization, and maintenance of the OpenMRS Reference Application within healthcare settings.

  • Developers: Contributing to OpenMRS through source code or module development. 

  • Testers: Identifying and analyzing bugs in OpenMRS.

  • Subject Matter Experts: Assisting with documentation and translations.

Getting Started

Our wiki has a Getting Started as a Developer with OpenMRS guide, which, as the name suggests, can help you get started as a developer :)

Community

Although you’ll get more in-depth information on our community, you should know about how we interact. OpenMRS is more than just software—it's a global community of passionate individuals dedicated to improving healthcare through open-source technology. Staying connected is key, and we’ve made it easy for you to join in and start engaging with our vibrant network.

You’ll be introduced to our core platforms, where members collaborate, share ideas, and support each other. Start by signing up for an OpenMRS ID—your gateway to all our community resources. From there, you can join the conversations on our community forum, OpenMRS Talk, or connect in real-time on Slack.

Panel
panelIconId1f680
panelIcon:rocket:
panelIconText🚀
bgColor#DEEBFF

Don't just stand there; let’s go!