GSoC 2025: Translation Builder for the Form Builder - Final Presentation

GSoC 2025: Translation Builder for OpenMRS Form Builder

Project Title: Translation Builder for OpenMRS Form Builder

Contributor: Bharath Kumar Shetty

Mentors: Nethmi Rodrigo and Anjula Samarasinghe

Project Link: Wiki Page

Repository: openmrs/openmrs-esm-form-builder

Overview

The OpenMRS Form Builder is a tool that helps create forms for healthcare data collection. However, it lacked a way to manage translations for multilingual support.

My project introduced a Translation Builder - a new feature inside Form Builder — that allows users to:

  • View and manage translations for form elements.
  • Fetch saved translations from the backend and merge them with the form schema.
  • Upload translation files back to the backend.
  • Edit translations directly within the Form Builder UI.
  • Download translation files for external use.
  • Ensure reliability with unit tests and comprehensive end-to-end tests.

This makes it much easier for implementers to build forms in multiple languages.

Objectives

  • Build a full-fledged Translation Builder component inside Form Builder.
  • Integrate with backend to fetch, merge, and upload translations.
  • Add download/upload support for translation files.
  • Ensure robust state management for translations.
  • Provide end-to-end test coverage to guarantee reliability.

Contributed Repository

Pull Requests

Demo video

Weekly Blog Posts

Summary of Work

Over the 12 weeks, I:

  • Designed and built the Translation Builder UI and workflows.
  • Connected it to the backend for fetching and uploading translations.
  • Implemented download/upload functionality for translation files.
  • Enhanced state management so user edits are preserved during schema updates.
  • Wrote Comprehensive e2e test workflows covering translation scenarios.
  • Participated in weekly mentor sync calls and squad calls to refine progress.

Learnings & Takeaways

This project helped me learn:

  • How to design a new feature from scratch in a large open-source codebase.
  • Best practices in React state management and schema synchronization.
  • Writing Playwright e2e tests and designing test workflows.
  • Following OpenMRS 3.0 design guidelines and coding standards.
  • Collaborating effectively with mentors and the community.

Acknowledgements

I want to sincerely thank my mentors Nethmi Rodrigo and Anjula Samarasinghe, who were always supportive and guided me through challenges.

Special thanks to the GSoC administrators Jayasanka and Beryl for their continuous encouragement, timely support, and for keeping everything well organized throughout the program.

Thanks to the OpenMRS community and my fellow GSoC contributors for their feedback and encouragement throughout this journey.


:light_bulb: This marks the completion of my GSoC 2025 project - Translation Builder. I look forward to continuing my contributions to OpenMRS beyond GSoC.

4 Likes