StringLane

Browse docsHow to Add a New Locale
How-To

How to Add a New Locale

Create a new locale in StringLane by entering its BCP 47 code. What file gets created, and what happens on multi-package projects.

Last updated

Adding a locale creates a new localization file in your project folder. The new locale then appears alongside every other one in the detail pane, and in the Issues panel.

Steps#

  1. With a project open, click + Add Locale in Settings → Project → General, below the locale list.
Settings → Project → General: project name, file format, base locale, and the Locales list with a Remove link per locale and the + Add Locale button beneath it
  1. The Add New Locale dialog asks for one thing: a Locale Code in BCP 47 form — de, fr-CA, zh-Hans, pt-BR.

  2. As you type, StringLane shows the file it is about to create (Will create: app_it.arb). It rejects codes that are malformed or already in the project, and Create Locale stays disabled until the code is valid.

Add New Locale dialog: a single Locale Code field with the will-create filename preview beneath it, and Cancel / Create Locale buttons

There is no language picker. You type the code, not a language name — "French" will not resolve to fr. If you are unsure of a code, the IANA subtag registry is the authority; the short answer is usually the two-letter ISO 639-1 code, optionally plus a region (pt-BR) or script (zh-Hans).

Multi-package projects#

If your project spans several packages or namespaces — a multi-module Android app, or an i18next setup with separate namespace folders — the dialog also shows a Packages list with a checkbox per origin, and a filename preview for each.

Tick the ones that should get the new locale. StringLane remembers your selection and pre-ticks the same set next time. See How to Open a Localization Project for how multi-origin projects are detected.

Translate it straight away#

The moment the file is created, StringLane offers a Translate New Locale prompt: "Would you like to AI-translate all keys into it now?"

  • Translate Now starts a bulk translation into the new locale immediately. It is disabled until an AI provider is configured — see Set Up AI Translation.
  • Later dismisses it. You can always run the same thing afterwards from the ✨ Translate… popover in the sidebar footer.

What gets created#

StringLane creates a new localization file in your project using the same format and naming convention as your existing files:

  • ARB: app_fr.arb alongside your existing app_en.arb
  • iOS .strings: fr.lproj/Localizable.strings
  • Android XML: res/values-fr/strings.xml
  • i18next JSON: fr/translation.json

The new file is empty, so every key shows the red Missing badge for that locale.

List View after adding a locale: every key shows a Missing badge for the new locale until it is translated

After adding a locale#

From here you can:

  • Bulk translate with AI: click ✨ Translate… in the sidebar footer and pick the new locale under Missing keys. See How to Bulk-Translate a Locale.
  • Give the AI regional guidance: 50 locales ship with built-in cultural context that is applied automatically. See How to Use Locale Presets.
  • Translate manually: click each cell and type your translation.
  • Check coverage: use the Missing filter in the search bar to see only untranslated keys.