Localization

All TalkJS UIs can be localized so that everything is displayed in the user's own language.

There are two ways to set the language in TalkJS. The default UI language is American English (en-US). If the majority of your users uses a language other than American English, you can change the default language in the Localization section of the Settings page in your dashboard.

If you need to support multiple languages at once, you can set the locale field per user. The locale field expects an IETF language tag.

Right-to-left languages

If your app's reading direction is right-to-left and you use the dir attribute in your <html> tag (eg <html dir="rtl">), then TalkJS is automatically shown in right-to-left mode. Otherwise, set the dir option in ChatboxOptions and InboxOptions to "rtl" and everything will work as expected.

Additionally, TalkJS automatically defaults to a right-to-left layout when a right-to-left language is selected.

East-Asian languages

If your language is commonly entered using an on-screen keyboard for character selection, you might find that TalkJS's behavior to automatically send messages on "enter" conflicts with character selection. A pragmatic workaround for this is to set enterSendsMessage to false in createInbox's messageField option.

Examples

Using the JS SDK

1const me = new Talk.User({
2 id: '123456',
3 name: 'Alice',
4 email: '[email protected]',
5 photoUrl: 'https://talkjs.com/images/avatar-1.jpg',
6 welcomeMessage: 'Hey there! How are you? :-)',
7 locale: 'nl-NL', // <-- that's the one!
8});

Using the REST API

1PUT https://api.talkjs.com/v1/YOUR_APP_ID/users/12345
2
3{
4 "name": "Alice",
5 "email": ["[email protected]"],
6 "photoUrl": "https://talkjs.com/images/avatar-1.jpg",
7 "welcomeMessage": "Hey there! How are you? :-)",
8 "locale": "nl-NL"
9}

Currently available languages

  • Albanian (sq-AL)
  • Arabic (ar) (with right-to-left UI layout)
  • Bosnian (bs-BA)
  • Bulgarian (bg-BG)
  • Chinese (Simplified) (zh-CN)
  • Chinese (Traditional) (zh-TW)
  • Croatian (hr-HR)
  • Czech (cs-CZ)
  • Danish (da-DK)
  • Dutch (nl-NL)
  • English (U.S.) (en-US)
  • Estonian (et-EE)
  • Finnish (fi-FI)
  • French (fr-FR)
  • Georgian (ka-GE)
  • German (de-DE)
  • Greek (el-GR)
  • Hebrew (he-IL) (with right-to-left UI layout)
  • Hindi (hi-IN)
  • Hungarian (hu-HU)
  • Indonesian (id-ID)
  • Italian (it-IT)
  • Japanese (ja-JP)
  • Korean (ko-KR)
  • Norwegian (BokmÃ¥l) (nb-NO)
  • Persian (Farsi) (fa)
  • Polish (pl-PL)
  • Portuguese (Brazilian) (pt-BR)
  • Romanian (ro-RO)
  • Russian (ru-RU)
  • Serbian (sr-SP)
  • Spanish (es-ES)
  • Swedish (sv-SE)
  • Turkish (tr-TR)
  • Ukrainian (uk-UA)
  • Vietnamese (vi-VN)

If the language you need is not on the list, tell us and we'll quickly add it.