icon-multilocaleMultiLocale
LoginBlogDevelopersPricingSign up
icon-sun
icon-close
English
Afrikaans
አማርኛ
العربية
Azərbaycanca
Беларуская
Български
বাংলা
Bosanski
Català
Čeština
Cymraeg
Dansk
Deutsch
ελληνικά
Español
Eesti
Euskara
فارسی
Suomi
Français
Frysk
Gaeilge
Gàidhlig
Galego
ગુજરાતી
هَوُسَ
עברית
हिन्दी
Hrvatski jezik
Krèyol ayisyen
Magyar
Հայերեն
Bahasa Indonesia
Igbo
Íslenska
Italiano
日本語
Basa Jawa
ქართული
Қазақша
ភាសាខ្មែរ
ಕನ್ನಡ
한국어
Kurdî
Кыргызча
Lëtzebuergesch
ລາວ
Lietuvių
Latviešu
Malagasy
Māori
Македонски
മലയാളം
Монгол
मराठ
Bahasa Melayu
Myanmasa
नेपाली
Nederlands
Norsk
Chi-Chewa
Panjabi
Polski
پښتو
Português
Română
Русский
सिनधि
සිංහල
Slovenčina
Slovenščina
Gagana Samoa
chiShona
Soomaaliga
Shqip
Српски
Sesotho
Basa Sunda
Svenska
Kiswahili
தமிழ்
తెలుగ
Тоҷикӣ
ไทย
Filipino
Türkçe
Українська
اردو
Ўзбек
Tiếng Việt
isiXhosa
ייִדיש
Yorùbá
中文
isiZulu
icon-multilocaleMultiLocale
BlogDevelopersPricingLoginSign up
icon-sun
icon-close
English
Afrikaans
አማርኛ
العربية
Azərbaycanca
Беларуская
Български
বাংলা
Bosanski
Català
Čeština
Cymraeg
Dansk
Deutsch
ελληνικά
Español
Eesti
Euskara
فارسی
Suomi
Français
Frysk
Gaeilge
Gàidhlig
Galego
ગુજરાતી
هَوُسَ
עברית
हिन्दी
Hrvatski jezik
Krèyol ayisyen
Magyar
Հայերեն
Bahasa Indonesia
Igbo
Íslenska
Italiano
日本語
Basa Jawa
ქართული
Қазақша
ភាសាខ្មែរ
ಕನ್ನಡ
한국어
Kurdî
Кыргызча
Lëtzebuergesch
ລາວ
Lietuvių
Latviešu
Malagasy
Māori
Македонски
മലയാളം
Монгол
मराठ
Bahasa Melayu
Myanmasa
नेपाली
Nederlands
Norsk
Chi-Chewa
Panjabi
Polski
پښتو
Português
Română
Русский
सिनधि
සිංහල
Slovenčina
Slovenščina
Gagana Samoa
chiShona
Soomaaliga
Shqip
Српски
Sesotho
Basa Sunda
Svenska
Kiswahili
தமிழ்
తెలుగ
Тоҷикӣ
ไทย
Filipino
Türkçe
Українська
اردو
Ўзбек
Tiếng Việt
isiXhosa
ייִדיש
Yorùbá
中文
isiZulu
Integrations/CLI
icon-terminal

CLI

Download and import translation files from your terminal

Get started free

Overview

The multilocale package on npm is a command line client for projects that keep their translations as files. Every step runs without a browser, including creating the account: signup --email prints a session to stdout and stores it where the other commands look, so a script or an agent can go from nothing to translated files without a person clicking anything. It downloads a project into JSON, JavaScript, Swift, Android or Gatsby layouts, imports files you already have, adds, updates and deletes phrases, and reports duplicate and unused keys — so localization fits into the same build step as the rest of your assets.

Quick start

From nothing to translated files

# Run it with npx, or install it as a devDependency
npx multilocale --help

# Create an account from the terminal — no browser, no dashboard
npx multilocale signup --email you@example.com --json

# Create a project and the locales it ships
npx multilocale projects create "my-app" --locales en,es,fr --default-locale en

# Push the translation files you already have …
npx multilocale import

# … and write every locale back into your repository
npx multilocale download

Day to day

# Already have an account? Sign in with the browser flow instead of signup
multilocale login

multilocale projects list

# Add a phrase and machine-translate it into every project locale
multilocale add "Save changes"

# Correct one translation by hand
multilocale update "Save changes" "Enregistrer les modifications" -l fr

multilocale duplicates   # values translated twice
multilocale unused       # keys no source file references any more

# Every command that returns data takes --json, so a script or an agent
# can read the result instead of parsing the human output
multilocale download --json

multilocale.json

{
  "projectId": "YOUR_PROJECT_ID",
  "format": "json",
  "paths": ["messages/%lang%.json"]
}

Anywhere under the working directory. It selects the project and the download layout, so none of the commands above need a flag.

Features

  • icon-arrow-right-filled

    An account without a browser

    signup --email creates the account, the organization and a first project from the terminal, and stores the session the other commands read.

  • icon-arrow-right-filled

    Download and import

    Write translation files into your repository, or import the files you already ship.

  • icon-arrow-right-filled

    Several file layouts

    Detects JSON, JavaScript, Swift, Android resource and Gatsby projects and writes the matching format.

  • icon-arrow-right-filled

    Duplicate and unused reports

    Lists values translated twice, and keys no source file references any more, so the dictionary stays clean.

Category

Developer tools

Built by

MultiLocale

Links

Developer docs
CLI source on GitHub
API reference
Create an account

Language

AfrikaansአማርኛالعربيةazərbaycanбеларускаябългарскиবাংলাbosanskicatalàčeštinaCymraegdanskDeutschΕλληνικάEnglishespañoleestieuskaraفارسیsuomifrançaisFryskGaeilgeGàidhliggalegoગુજરાતીHausaעבריתहिन्दीhrvatskiHaitian CreolemagyarհայերենIndonesiaIgboíslenskaitaliano日本語Jawaქართულიқазақ тіліខ្មែរಕನ್ನಡ한국어kurdî (kurmancî)кыргызчаLëtzebuergeschລາວlietuviųlatviešuMalagasyMāoriмакедонскиമലയാളംмонголमराठीMelayuမြန်မာनेपालीNederlandsnorskNyanjaਪੰਜਾਬੀpolskiپښتوportuguêsromânăрусскийسنڌيසිංහලslovenčinaslovenščinaSamoanchiShonaSoomaalishqipсрпскиSesothoBasa SundasvenskaKiswahiliதமிழ்తెలుగుтоҷикӣไทยFilipinoTürkçeукраїнськаاردوo‘zbekTiếng ViệtIsiXhosaייִדישÈdè Yorùbá中文isiZulu

Resources

StatusBlogDevelopersAPI referenceIntegrationsllms.txtPricingAlternativesBuyer guidesPrivacy PolicyTerms and Conditions

Integrations

React & Next.jsCLIREST APIWebhooksMCP Server

Free developer tools

Locale Code ConverterHreflang Tag Generatori18n JSON Key Checker

Services

Translated with MultilocaleBlogged with PolyblogHosted on TiramisuImages from ImagelatoMonitored by Cron Cool

Follow Us

icon-linkedin
icon-twitter
icon-facebook
icon-instagram
icon-threads

Contact us

Contact usinfo@multilocale.com

Copyright @ MultiLocale 2023 - 2026