I’ve recently been asked, “How can our org translate O3 app string content? How do we use Transifex to help with this?”
This is a great question, since any organization needing to translate the O3 EMR will run into this.
Here is my understanding: tl;dr: The translation files will have to be pulled from Transifex and committed into the code directly, for each repo.
- Transifex Setup: Ensure the O3 repos you need are included in the OpenMRS Org Transifex project (e.g. you can see esm-patient-management is here, esm-patient-chart is here, etc)
- Complete Translation in Transifex UI: Ensure your translation team goes through the UI to translate each repo’s strings (e.g. here at this link we see both the complete & incomplete french translations for the Registration App)
-
Manual, Simple Workflow:
- Export JSON from Transifex: In the left navigation, click Resources for the Repo, then click the language you want, and click “Download for use” from the Resources modal that popped up. . This downloads a JSON file for you.
- Upload JSON into the repo’s esm-NAME-app/translations/ directory: E.g. this example of JSON string translations uploaded for the active visits app
- Then: The strings should be translated in the UI when the user switches their locale.
OR 4. Automated Workflow: This can also be done by using the CLI Transifex client and running tx pull -l fr (to get the fr locale for instance) and commit the changes.
Ideally, it should be our CD doing that though. @mksrom recalls that Brandon had set up something a while back with Bamboo, maybe this Build, maybe we can reuse that? @dkayiwa what would we need to do in order to set things up so that translation work done in Transifex is automatically pulled into the O3 RefApp?
@frederic.deniger which approach do you think you’ll want to take? #3 seems surprisingly easy, just manual work to go through the export/import process.
@mksrom or @dkayiwa or @mseaton or @burke anything you’d add or correct here?