The Journey of the REACT Form Engine

Introduction

The REACT Form Engine (RFE), formerly known as the OHRI Form Engine, has come a long way since its inception in 2021. Initially conceptualized by UCSF and its partners Makerere University and the University or Nairobi, it was designed to address the needs of diverse users in the OpenMRS community. The aim was to create a product that not only matched the advanced capabilities of the Angular Form Engine (AFE, formerly AMPATH Form Engine), but also to offer an easy transition for all implementers by ensuring a seamless UI that matched the O3 designs and tech-stack (in this case, REACT) which would also allow more contributions from the community and also be more in line with the overall O3 tech-stack, which is also REACT-based.

The Evolution of the RFE

The RFE has seen a considerable evolution since its early days. A lot of effort has been invested to ensure it achieves parity with the AFE. This was crucial to ensure that the transition for implementers was as smooth as possible. The process involved refining the product’s features and functionality, and working closely with the OpenMRS Community (specially with organisations and individuals with prior experience with the AFE) to gather feedback and continually improve the product.

Although the idea of a new forms engine may have sounded like a heavy lift, we deemed it necessary to have such a core component of O3 being available in React, and also for it to be using the O3 designs (the AFE at that time was not yet updated to match the O3 designs) to offer a consistent end user experience. Having said that, to make the technical transition as easy as possible, we decided early on to use the same JSON schema (with a few extensions).

Vivid Discussion in the OMRS Conference in 2023

A significant moment in the journey of the RFE was the vivid discussion that took place during the OMRS Conference in 2023 in Abuja (the unconference session One Form Engine, in the yellow room). This conference served as a platform for conversations about the RFE, its progress, and its future. Valuable insights were gained during this conference, which greatly contributed to the continued evolution of the RFE.

The key points of our conversation centred around long-term sustainability and appreciation for our donor’s (CDC HQ TAP mechanism) efforts. One Form Engine means we are all contributing to the same code base without duplicating efforts, while meeting one of the most important objectives of O3: sharable packages and resources.

Inclusion in the OpenMRS Form Engine Hackathon in Kampala

The development of the RFE reached an important milestone during a hackathon organised by OpenMRS. This event was a good opportunity to leverage the diverse experiences of various teams and work towards a common goal – making the RFE the default Form Engine for the OpenMRS Reference Application. This kind of collaborative work is important in the open source community, and the hackathon was a good showcase of what can be achieved when everyone works together.

The RFE Now and in the Future

We are excited to announce that the RFE is now officially in Dev3 and is fast-tracking its way into the next release of the OpenMRS Reference Application. This signifies a major step in our journey and brings us closer to our ultimate goal of making the RFE the default Form Engine. We are extremely grateful for the tireless efforts of everyone involved in making this a reality.

Conclusion

The journey of the REACT Form Engine is a testament to the power of collaboration and community in the open source world. We would like to extend our heartfelt thanks to everyone (OpenMRS, AMPATH, Makerere University (METS), University of Nairobi, PIH, Mekom, Madiro, DIGI) who has contributed to this project, as well as our funder, CDC. Your efforts have brought us one step closer to making the RFE the default Form Engine in the OpenMRS Reference Application. We look forward to the exciting next steps in this journey.

Useful Resources:

13 Likes