# Language German incomplete or missing

**URL:** <https://discuss.openedx.org/t/language-german-incomplete-or-missing/8778>\
**Category:** Site Operators\
**Created:** [November 23, 2022, 12:30pm UTC](https://discuss.openedx.org/t/language-german-incomplete-or-missing/8778 "2022-11-23T12:30:18Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Wasabi](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/wasabi/32/4253_2.png) [@Wasabi](https://discuss.openedx.org/u/Wasabi)\
**Post date:** [November 23, 2022, 12:30pm UTC](https://discuss.openedx.org/t/language-german-incomplete-or-missing/8778/1 "2022-11-23T12:30:18Z")

</div>

We’re running OpenEDX (based on tutor, version 14.0.5) and are trying to consistently display at least the user experience (LMS) in German. During Quickstart, we’ve set the language to “de-de”:

```auto
The default language code for the platform [de-de] de-de

```

However, the page (normal LMS, URL learn.domain.tld) displays a weird mix of German and English:

 ![Screenshot 2022-11-23 at 13.20.58](https://us1.discourse-cdn.com/flex020/uploads/openedx/original/2X/6/6f53274b29628e08cb5cbf1b83a468ca669283e9.png)

Note the Next and Previous Buttons, Course, Help, before it says “Resume Course”, but other parts of the page are displayed in German.

Funnily enough, if we go to Studio and click on preview (URL preview.learn.domain.tld), everything is displayed correctly in German, so the translation itself exists:

 ![Screenshot 2022-11-23 at 13.23.49](https://us1.discourse-cdn.com/flex020/uploads/openedx/original/2X/0/02e0c5c6d0e50d9a4e402e21d5524cd4a765ac6b.png)

Also, in the dropdown within the user profile (site preferences), German is not even available:

 ![Screenshot 2022-11-23 at 13.26.44](https://us1.discourse-cdn.com/flex020/uploads/openedx/original/2X/7/7cd2cf8f2ce0063ead73dfcf21764c30ac5694c0.jpeg)

In the database, the preferred language is somehow set to German though:

```auto
mysql> select * from user_api_userpreference where `key` = "pref-lang";
+----+-----------+-------+---------+
| id | key | value | user_id |
+----+-----------+-------+---------+
| 1 | pref-lang | de-de | 4 |
| 2 | pref-lang | de-de | 5 |
| 3 | pref-lang | de-de | 6 |
| 4 | pref-lang | de-de | 7 |
| 5 | pref-lang | de-de | 8 |
| 6 | pref-lang | de-de | 9 |
| 7 | pref-lang | de-de | 10 |
| 8 | pref-lang | de-de | 11 |
| 9 | pref-lang | de-de | 12 |
| 10 | pref-lang | de-de | 13 |
| 11 | pref-lang | de-de | 14 |
| 12 | pref-lang | de-de | 15 |
| 13 | pref-lang | de-de | 16 |
| 14 | pref-lang | de-de | 17 |
| 15 | pref-lang | de-de | 18 |
| 16 | pref-lang | de-de | 19 |
| 17 | pref-lang | de-de | 20 |
| 19 | pref-lang | de-de | 21 |
| 20 | pref-lang | de-de | 22 |
+----+-----------+-------+---------+
19 rows in set (0.00 sec)

```

Ideally, we’d like to simply hard code the language to German, as we don’t expect international users on the platform. If that’s not possible, we’d like to at least set the preferred language to German for everyone by default with the option to switch back and forth in the user account.

Any idea why LMS is behaving as it is?

---

<div class="post-metadata">

**Author:** ![uetuluk](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/uetuluk/32/3015_2.png) [@uetuluk](https://discuss.openedx.org/u/uetuluk)\
**Post date:** [November 25, 2022, 3:53am UTC](https://discuss.openedx.org/t/language-german-incomplete-or-missing/8778/2 "2022-11-25T03:53:14Z")

</div>

You need to add the translations from Transfixed manually since the Learning MFE does not come with German translations.

> **[frontend-app-learning/src/i18n/messages at open-release/nutmeg.3 ·...](https://github.com/openedx/frontend-app-learning/tree/open-release/nutmeg.3/src/i18n/messages)**
>
> open-release/nutmeg.3/src/i18n/messages

You can see that it is already translated here: [https://www.transifex.com/open-edx/edx-platform/frontend-app-learning/](https://www.transifex.com/open-edx/edx-platform/frontend-app-learning/)

The preview works since those translations come from the LMS rather than Learning MFE.

You can refer to this guide for adding the translation files to MFE: [GitHub - overhangio/tutor-mfe](https://github.com/overhangio/tutor-mfe#adding-custom-translations-to-your-mfes)

---

<div class="post-metadata">

**Author:** ![Wasabi](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/wasabi/32/4253_2.png) [@Wasabi](https://discuss.openedx.org/u/Wasabi)\
**Post date:** [November 25, 2022, 2:02pm UTC](https://discuss.openedx.org/t/language-german-incomplete-or-missing/8778/3 "2022-11-25T14:02:52Z")

</div>

Dear @uetuluk, thank you so much for your reply, that makes a lot of sense.

I’ve downloaded the de\_DE JSON files from [here (learning)](https://www.transifex.com/open-edx/edx-platform/frontend-app-learning/), and [here (account)](https://www.transifex.com/open-edx/edx-platform/frontend-app-account/), and placed them as follows:

```auto
# config printroot is ~/.local/share/tutor/
#:~/.local/share/tutor/env/plugins/mfe/build/mfe/i18n$ ls
account i18n-merge.js learning
#:~/.local/share/tutor/env/plugins/mfe/build/mfe/i18n$ ls account/
de_DE.json
#:~/.local/share/tutor/env/plugins/mfe/build/mfe/i18n$ ls learning/
de_DE.json

```

After running

```auto
tutor images build mfe
tutor local start -d

```

It still stays English and the option “German” (nor Deutsch obviously) is not available in the menu. I also tried naming the files `de-de.json` as `de-de` is used otherwise throughout, but it doesn’t help either. Am I missing something or did I name the folders / files incorrectly?

Thanks!

---

<div class="post-metadata">

**Author:** ![uetuluk](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/uetuluk/32/3015_2.png) [@uetuluk](https://discuss.openedx.org/u/uetuluk)\
**Post date:** [November 28, 2022, 2:20am UTC](https://discuss.openedx.org/t/language-german-incomplete-or-missing/8778/4 "2022-11-28T02:20:04Z")

</div>

Sorry, it was a little more involved than I thought.

German is not supported at all, so you will have to change the code.

Here is a topic about it: [Tutor MFE: Custom translation does not work for Vietnamese](https://discuss.openedx.org/t/tutor-mfe-custom-translation-does-not-work-for-vietnamese/7534)

---

<div class="post-metadata">

**Author:** ![Wasabi](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/wasabi/32/4253_2.png) [@Wasabi](https://discuss.openedx.org/u/Wasabi)\
**Post date:** [February 22, 2023, 4:44pm UTC](https://discuss.openedx.org/t/language-german-incomplete-or-missing/8778/5 "2023-02-22T16:44:23Z")

</div>

In case anyone finds this thread and has the same problem, I did find a solution that should be tutor compatible. It is documented in detail here: [Problems applying Customised MFE libraries (eg "frontend-platform") to a production open edx platform (using "tutor local") - #12 by Wasabi](https://discuss.openedx.org/t/problems-applying-customised-mfe-libraries-eg-frontend-platform-to-a-production-open-edx-platform-using-tutor-local/8691/12)
