Server Asset Overrides

This guide effectively documents the usage of the asset_path server configuration option.

Structure

/config/assets/
├── favicon.ico
├── logo.png
└── locales/<lang>[-[variant]]/<namespace>.json

Assets

Asset File Name Directory Notes
Favicon favicon.ico No N/A
Logo logo.png No N/A
Translation Locales locales Yes see locales

locales

Important Note

Currently users can only override languages that already exist in this list either by overriding the language itself, or adding a variant form of that language. If you’d like support for another language feel free to make a PR. We also encourage people to make PR’s for variants where the difference in the variants is significant.

Important Note

Users wishing to override the locales files should be aware that we do not provide any guarantee that the file will not change in a breaking way between releases as per our [Versioning Policy]. Users who planning to utilize these overrides should either check for changes to the files in the en translation prior to upgrading or Contribute their translation to ensure it is maintained.

The locales directory holds folders of internationalization locales. This directory can be utilized to override these locales. They are the names of locales that are returned by the navigator.language ECMAScript command. These are generally those in the RFC5646 / BCP47 Format specifically the language codes from Crowdin.

Each directory has JSON files which you can explore the format of in the internal/server/locales directory on GitHub. The important part is the key names you wish to override.

A full example for the en-US locale for the portal namespace is locales/en-US/portal.json.

Languages in browsers are supported in two forms. In their language only form such as en for English, and in their variant form such as en-AU for English (Australian). If a user has the browser language en-AU we automatically load the en and en-AU languages, where any keys in the en-AU language take precedence over the en language, and the translations for the en language only applying when a translation from en-AU is not available.

Namespaces

Each file in a locale directory represents a translation namespace. The list of current namespaces are below:

Namespace Purpose
portal Portal Translations

Supported Languages

List of supported languages and variants:

Language Locale Override Path
English en locales/en/*.json
Arabic ar locales/ar/*.json
Arabic (Saudi Arabia) ar-SA locales/ar-SA/*.json
Czech cs locales/cs/*.json
Czech (Czechia) cs-CZ locales/cs-CZ/*.json
Danish da locales/da/*.json
Danish (Denmark) da-DK locales/da-DK/*.json
German de locales/de/*.json
Greek el locales/el/*.json
Greek (Greece) el-GR locales/el-GR/*.json
Spanish es locales/es/*.json
Basque eu locales/eu/*.json
Basque (Spain) eu-ES locales/eu-ES/*.json
Finnish fi locales/fi/*.json
French fr locales/fr/*.json
Hungarian hu locales/hu/*.json
Italian it locales/it/*.json
Japanese ja locales/ja/*.json
Japanese (Japan) ja-JP locales/ja-JP/*.json
Norwegian Bokmål nb locales/nb/*.json
Norwegian Bokmål (Norway) nb-NO locales/nb-NO/*.json
Dutch nl locales/nl/*.json
Norwegian Bokmål no locales/no/*.json
Polish pl locales/pl/*.json
Portuguese pt locales/pt/*.json
Brazilian Portuguese pt-BR locales/pt-BR/*.json
Romanian ro locales/ro/*.json
Russian ru locales/ru/*.json
Slovenian sl locales/sl/*.json
Slovenian (Slovenia) sl-SI locales/sl-SI/*.json
Swedish sv locales/sv/*.json
Swedish (Sweden) sv-SE locales/sv-SE/*.json
Ukrainian uk locales/uk/*.json
Ukrainian (Ukraine) uk-UA locales/uk-UA/*.json
Vietnamese vi locales/vi/*.json
Vietnamese (Vietnam) vi-VN locales/vi-VN/*.json
Chinese zh locales/zh/*.json
Chinese (China) zh-CN locales/zh-CN/*.json
Chinese (Taiwan) zh-TW locales/zh-TW/*.json

More information may be available from the Internationalization Reference Guide.