diff --git a/website/developer-docs/translation.md b/website/developer-docs/translation.md new file mode 100644 index 0000000000..623a2aec44 --- /dev/null +++ b/website/developer-docs/translation.md @@ -0,0 +1,29 @@ +--- +title: Translation +--- + +Translation in authentik is done in two places. Most of the text is defined in the frontend in `web/`, and a subset of messages is defined in the backend. + +The frontend uses [lingui](https://lingui.js.org/), and the backend uses the built-in django translation tools. + +## Frontend + +If you want to translate the frontend to a new language, ensure the language code is in the `package.json` file in `web/`: + +```json + // [...] + "lingui": { + // [...] + "locales": [ + "en", + "pseudo-LOCALE", + "a-new-locale" + ], + // [...] +``` + +Afterwards, run `npx lingui extract` to generate a base .po file. + +The .po files can be edited by any text editor, or using a tool such as [POEdit](https://poedit.net/). + +To see the change, run `npm run watch` in the `web/` directory. diff --git a/website/sidebarsDev.js b/website/sidebarsDev.js index 301d1228a2..fb8b513955 100644 --- a/website/sidebarsDev.js +++ b/website/sidebarsDev.js @@ -8,5 +8,9 @@ module.exports = { type: "doc", id: "api", }, + { + type: "doc", + id: "translation", + }, ], };