6. Multi-Language Setup

You can skip this setup for now. This is not a mandatory setup to run this app.

So, we have used 10 languages in this app. English, Spanish, Hindi, Arabic, Portuguese, French, Chinese, German, and Indonesian.

You can add as many languages as you want. The multi-language feature is only for all of the static texts in the app. It's static and not related to the database.

English is the default and starting Language. You can change the default language too if you want.

6.1 Editing An Existing Language

If your language is already available on the list and you want to make some changes, then follow the steps below:

Example: If you want to change some text in the Spanish language, then open the assets/translations/es-ES.json file and edit only right-side values.

Don't edit the keys (Left side values)

If you find any characters in the right-side values like this below, don't remove them.


6.2 Adding A New Language

If you want to add a new language that is not available in the default list, follow the steps below:

  • First, go to the assets/translations folder from your IDE. Add a .json file here with <language_code>-<country_code>.json name. Now go to the assets/translations/en-US.json file and copy everything from this file and paste it to your newly created .json file.

  • Now, Rename the all right-side strings. Look at the es-ES.json file and you will understand what to do.

Don't edit the keys (Left side values)

If you find any characters in the right-side values like this below, don't remove them.


  • Now go to lib/config/language_config.dart the file and add your language code to the language list.

Your code should look like this:

"<Language_Name>": [<'Language_Code'>, <'COUNTRY_CODE'> ]
  • For Android, you don’t have to do anything.

  • For iOS, go to ios/Runner/Info.plist and add your language code in a string. Look at the picture below.

  • Add <string>your_language_code</string> inside the array. That's it.

6.3 Removing An Existing Language

To remove any language that is available in the list, please follow the steps below:

  • Go to the asset/translations folder and delete the your_language_code.json file that you want. (You shouldn't delete the en-US.json file because this is the default language).

  • Now go to lib/config/language_config.dart file and remove the list item that you want to remove from the langauges list.

  • And finally go to ios/Runner/Info.plist and remove the string. That’s it. (Only for iOS)

6.4 Start Locale Setup

English is added as the start language of the app by default. If you want to add any other language as a Start Language then go to the lib/language_config.dart file and replace the startLocale value with your locale value.

6.5 Disable Multi-Language Feature

You can disable the multi-language feature if you want. For this case, English will be used as the default and only language in the app. If you do that, the changing language option will be hidden from the app and the app will run with the default language.

To disable it go to the lib/configs/features_config.dart file and set the isMultilanguageEnbled value to false.

Last updated