# Issue with Translation in Open edX Quince

**URL:** <https://discuss.openedx.org/t/issue-with-translation-in-open-edx-quince/13050>\
**Category:** Site Operations Help\
**Tags:** i18n, tutor, translation, tutor-mfe, quince\
**Created:** [May 20, 2024, 11:16am UTC](https://discuss.openedx.org/t/issue-with-translation-in-open-edx-quince/13050 "2024-05-20T11:16:31Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![vivek](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/vivek/32/6825_2.png) [@vivek](https://discuss.openedx.org/u/vivek)\
**Post date:** [June 10, 2024, 5:34am UTC](https://discuss.openedx.org/t/issue-with-translation-in-open-edx-quince/13050/4 "2024-06-10T05:34:51Z")

</div>

hi @Yaniv_Gershon ,

> [@Yaniv\_Gershon](#):
>
> the main issue lies with the MFE (Micro-Frontend), which is entirely in English

This is because the language preference defaults to English if not explicitly set by the user. When the platform is first loaded, it defaults to English. If you want your site to support multiple languages, you can follow this guide: [How to Enable Multiple Languages for Your Open edX Platform](https://discuss.overhang.io/t/howto-enable-multiple-languages-for-your-open-edx-platform/140). Alternatively, if you want the platform to be in a specific language, you can follow my solution below

> [@vivek](#):
>
> language of site is taken from user pref-lang configuration .  
> so i did some modification function process\_response in this file  
> `openedx/core/djangoapps/lang_pref/middleware.py` for complete site translation in Hebrew

* * *

> [@Yaniv\_Gershon](#):
>
> guidance or solutions specifically for translating the MFE

**The way translation is handled in the MFEs differ from how the platform handles translations (which is Python gettext based).**

The translation framework in MFEs is based on formatjs ([Installation | Format.JS](https://formatjs.io/docs/getting-started/installation)).

Instead of .po files the translations lie in **.json files**. Every language has its own file (per MFE), so to override a specific string in all MFEs, we would have to override it in all translation files in all MFEs This also sometimes applies to decency pkgs, like header, footer…etc.  
For custom translations in MFE, you can modify your message files and provide translations in JSON format. Place the translations in the `i18n` folder structured as `i18n/messages/<language>.json`.  
for Example see screen shot below:

 ![Screenshot from 2024-06-10 10-54-49](https://us1.discourse-cdn.com/flex020/uploads/openedx/original/2X/0/05ca07077666dd7057746daeb4d15c8030f5a055.png)  
 ![Screenshot from 2024-06-10 10-53-14](https://us1.discourse-cdn.com/flex020/uploads/openedx/original/2X/a/a4d53f8029d3a22f87cf4065754b9a5d836fa731.png)

---

_[View the full topic](https://discuss.openedx.org/t/issue-with-translation-in-open-edx-quince/13050)._
