# Internationalization (i18n) The backend and the frontend of the application are internationalized. This means that the application can be translated into different languages. The application is currently available in English and French. ## Local setup To be able to upload/retrieve translation files to/from Crowdin you need to setup your local environment with the following environment variables: ```bash cp ./env.d/development/crowdin.dist ./env.d/development/crowdin ``` Then fill "CROWDIN_API_TOKEN" with your token and "CROWDIN_PROJECT_ID" with the project id in the `./env.d/development/crowdin` file. NB: If you don't have a personal Crowdin API token, go to Crowdin interface to generate it: Settings -> API -> Personal Access Tokens -> New token This configuration file will be loaded by the crowdin docker instance. ## How to update the translations ### First way (safe way) 1/ Generate the translation files for both frontend and backend ```bash make i18n-generate ``` Check locally everything is ok before uploading the files to the translation platform. 2/ Upload the files to the translation platform (crowdin): ```bash make crowdin-upload ``` 3/ Fill the missing translations on the translation platform: => [https://crowdin.com/project/lasuite-people](https://crowdin.com/project/lasuite-people) 4/ Download the translated files from the translation platform and compile them: ```bash make i18n-download-and-compile ``` ### Second way (faster way) 1/ Generate the translation files for both frontend and backend and upload them to the translation platform (crowdin): ```bash make i18n-generate-and-upload ``` 2/ Fill the missing translations on the translation platform: => [https://crowdin.com/project/lasuite-people](https://crowdin.com/project/lasuite-people) 3/ Download the translated files from the translation platform and compile them: ```bash make i18n-download-and-compile ```