Proposal to rename "RefApp"


Proposal to rename “RefApp”

Hi all :wave:

I’ve created this post to propose a change in how we refer to the OpenMRS Reference Application. Currently known as the “RefApp,” I suggest we transition to calling it the “Demo.” There are a few reasons why I think we should consider adopting “Demo” to streamline our vocabulary internally and externally…

Rationalise our terminology for simplicity and clarity

The term “Demo” is widely understood and immediately conveys the purpose of our application - a demonstration. It simplifies the terminology we use internally and externally and makes it more accessible, especially to those new to our Community or those outside of it.

Using “Demo” emphasises that this application is an example configuration of the OpenMRS 3 software. It serves as a showcase of what OpenMRS can do and how it can be adapted to meet various implementation needs. This change can help set clearer expectations for new participants in our Community and contributors about the purpose of the application.

Lets encourage exploration

A “Demo” implies something that is ready to try out, inviting users to explore its capabilities and consider how it might be tailored to their specific contexts. We are often thought of as a HIV EMR - our “Demo” is a great place to bust that myth and even help a user to understand better about where their specific content would go - ‘Your package here’ as a tooltip in “Clinical Views”, for example. This can be particularly appealing for potential implementers who are evaluating OpenMRS as a solution.

Align more closely with the outside world

Many software projects and platforms use “Demo” to describe their showcase or example applications. Adopting this terminology should align us more closely with broader software industry practices, potentially making it more approachable for new Community members and partners and potentially less ‘academic’ and more a ‘clinic ready’ software solution.

Emphasise our flexibility

The term “Demo” subtly underscores the flexibility and adaptability of OpenMRS, highlighting that the software is not just a static package but a foundation for building customised health information solutions. We can include introductory messaging as a user enters the “Demo” from our website to provide additional context on what they will see and how it can be adapted to meet a wide variety of use cases.

If not Demo, then what?

We could explore alternatives to ‘Demo’ - what would a suitable name be for our expression of what OpenMRS 3 can be? Sample site, Base, Test…

I would love your feedback

This proposal is intended to foster discussion and gather feedback. I believe this simple change could help us communicate more effectively about our tools and encourage broader engagement with OpenMRS outside our Community. What do you think?


Hi @pauladams Thank you for starting this thought provoking conversation! I agree that RefApp can be a bit problematic, as I often see RefApp confused now between 2.x and O3 - such as “BotswanaEMR is based on RefApp” and “KenyaEMR is based on RefApp”, but they are actually using substantially different versions of OpenMRS as their foundation. I’d like to see some differentiation of O3 from RefApp 2.x. That said, I think the term “demo” can be challenging when it comes to working with country implementations. Are implementations now based on Demo? I would think of Demo more in terms of what’s available on our site for folks to play with and check out how it works, not in terms of the “nickname” of the product. Are there other terms we could use to signal that this is a core product that we support and is ready for implementation contextualization for production use?

1 Like

My past experiences with demo versions of software have been in two categories:

  1. Scaled down version of the full app, with limited features.
  2. A full version of the application, but on an instance with sample data which any one can play with.

I am happy with an alternative to RefApp as long as it communicates more than what it currently does!


:100: absolutely! Let’s make things simpler and more in line with what anyone would expect: a demo system.

Long live “demo” and :coffin: “RefApp” :wave:

1 Like

Thank you for your thoughts on this Jan!

In the initial post, I am alluding really to OpenMRS 3. Unlike with 2.x, O3 has a defined user experience that should mean when implementors talk about their system, they would say it’s an O3-based EMR, not a RefApp based EMR and configured to meet their needs.

The Demo then becomes our online expression of what O3 is, hosted on a server, with sample data and configured in a way that reflects our communities most common use-cases. The features our community build for O3 are then O3 features and available to play around with on the O3 Demo.

One idea within the Demo environment may be to call to attention key areas that can be contextualised by implementors, or adapted for new use cases. We’re all familiar with in-app tours, this could be interesting to explore as an opportunity to onboard new members / contributors to our community via the application itself.

1 Like

Is there any reason we can’t just call our product “OpenMRS3” instead of RefApp? Then the demo could be the online demo that we host for people to play with and see how it works?


@janflowers agreed and indeed simpler is better, and I would even just suggest to progressively stop calling it O3. Why not just call it by its name: OpenMRS.

Technically there would still be a difference between what an implementer would spin up and what folks would see on That difference is “all demo stuff” (a default config and some demo data) and we would just need to document that somewhere, in particular how to get rid of the demo data when working your way towards a real implementation.