Your product in every language your customers read

Coroid gets your code ready for other languages, translates every string and checks every change, so your product stays translated after launch. Your files stay in your repository, and every change arrives as a pull request.

Localisation
Storefront
English source · 5 languages · checked 2 hours ago at 3f2c9a1
  • World readiness
  • Culture
  • Overview
  • Strings
  • Suggestions
  • Exchange
  • Contributors
  • Automations
  • Settings
Overview

Each language runs through three stages. Its next step is wherever its line stops.

Translate 135 strings
Strings1,240in 3 catalogues
Languages4plus 1 derived
Translated97.2%1,020 reviewed by people
Needs work135across 3 languages
  1. Englishen · source

    1,240 strings in 3 catalogues

  2. DeutschGerman · de
    100%
    Complete
    Passes
  3. FrançaisFrench · fr
    98%
    18 strings missing
    Passes
  4. 日本語Japanese · ja
    96.3%
    42 strings missing
    3 broken strings
  5. العربيةArabic · ar
    94.6%
    64 strings missing
    Passes
  6. British Englishen-GB · derived from English
    100%
    Derived and up to date
    Passes

Portal views on this page are recreations with illustrative data.

You are reading the proof

This site, its documentation and the Coroid portal are translated by the same engine your projects use. British English is derived from American English by spelling rules instead of being translated.

Get the code ready for every language

The Internationalisation wizard reads your repository without running any of its code. It keeps the catalogues you already have, or moves the text written into your code into new ones, and prepares everything in one pull request.

  • Any language can be the source: a Swedish product is translated to English and German the same way.
  • Add languages one at a time, or a whole market at once, such as Europe or the right-to-left languages.
  • Regional variants such as British English are derived by rules, so they cost nothing and stay in step with their parent.
  • Culture data shows what each market expects of dates, numbers, money, addresses and names.
Internationalisation
Internationalisation wizard

Every step starts from what the repository already has. Change only what you want; nothing changes until the pull request is merged.

Step 3 of 8
Languages to add

Pick languages one by one or add a whole market. Regional variants such as British English can be derived by rules instead of translated.

5 languages
  • DeutschGerman · de · 2 plural forms
  • FrançaisFrench · fr · 3 plural forms
  • 日本語Japanese · ja · 1 plural form
  • العربيةArabic · ar · right to left · 6 plural forms
  • British Englishen-GB · 2 plural formsDerived with British spelling
Add a market
Most spokenEuropeNordicsEast AsiaThe AmericasRight-to-left
BackContinue

Translate every string, and review what matters

The Localisation workbench shows where each language stands. One action translates what is missing: first from your organisation's translation memory, at no cost, then with the Translator model. You review and edit the result, then commit it as one pull request.

  • Your glossary fixes how product terms read in each language, and a translation that leaves out a term is refused.
  • Every reply is checked against your placeholders and plural rules; a string that fails is retried or escalated.
  • A model does not overwrite wording that a person wrote or approved, unless its source text changes.
  • Exchange files with agencies and translation tools, and import their work with every row checked.
Localisation
Storefront
English source · 5 languages · checked 2 hours ago at 3f2c9a1
  • World readiness
  • Culture
  • Overview
  • Strings
  • Suggestions
  • Exchange
  • Contributors
  • Automations
  • Settings
Strings

Every string in every language. Filters start with the work that matters.

日本語All cataloguesSearch keys and text…
Needs work45Missing42Source changed0Broken3Same as source0Machine1,035Reviewed160All1,240
Source日本語
Total: {amount}合計: {price}Broken
Your cart is emptyNo translation yetMissing
Welcome back, {name}No translation yetMissing
Prices include <b>VAT</b>価格には<b>消費税</b>が含まれますBroken
Weekly dealsNo translation yetMissing
checkout.total
Catalogue ui · label
Source · English
Total: {amount}
  1. 日本語 · JapaneseBroken
    合計: {price}

    Written by a model · Placeholders differ from the source

  2. DeutschReviewed
    Gesamt: {amount}
  3. FrançaisMachine
    Total : {amount}
  4. العربيةMachine
    الإجمالي: {amount}
  5. British EnglishDerived
    Total: {amount}

Check every change, whoever wrote it

The Globalisation check runs on task QA and on pull requests. It reads the strings a change touched, in every language, and the code the change adds. A change that leaves strings missing or broken goes back for repair.

  • New code that puts text people read straight into the code, or builds a sentence from parts, is sent back too.
  • Formatting, sorting and layout that assume one culture are reported until you choose to block them.
  • When you set it up, the check renders your pages in a pseudo translation to find cut-off text and layouts that do not mirror for right-to-left languages.
  • World readiness lists what your existing code still assumes about one language, and files small tasks to fix it.
German · pseudo translation/de-DE/
Your basket⟦Ýóúŕ ƀášķéţ·········⟧

Free shipping on every order

Save changes⟦Šáṽé çĥáñĝéš··········⟧

Prices include tax.⟦Þŕíçéš íñçļúðé ţáẋ.················⟧

Arabic · pseudo translation/ar-SA/
Your basket‮Your basket‬

Free shipping on every order

Save changes‮Save changes‬

Prices include tax.‮Prices include tax.‬

What the probe found
  1. Text that did not come from the catalogue/{locale}/ · p#promo · “Free shipping on every order” · runtime_text (de-DE, ar-SA)
  2. Text cut off when it grows/{locale}/ · button#save · “⟦Šáṽé çĥáñĝéš··········⟧” · clipped_text (de-DE)
  3. Layout that does not mirror right to left/{locale}/ · p#note · “padding-left: 12px” · unmirrored_layout (ar-SA)

People who know the language correct it where they read it

Invite native speakers to suggest better wording on your own site. They click a string, the Coroid popup shows its source and current translation, and their suggestion waits for your review.

  • Contributors take no seat in your organisation. Their access covers one project and the languages you choose.
  • The picker loads only when the page address asks for it, so ordinary visitors download nothing.
  • Approved suggestions are applied every night in one pull request, without a model call.
ACMENeuheitenAngeboteMarken
Weiter zur Kasse gehen

Kostenloser Versand ab 50 € und 30 Tage Rückgabe.

Bestellung prüfen
Translation modeClick any textExit
Suggest a translation
Key
ui · cart.checkout
English source
Proceed to checkout
Current translation
Weiter zur Kasse gehen
Your translation
Zur Kasse

Keep the parts in braces and angle brackets exactly as they are.

Send suggestion

Your translations stay in your repository

Coroid works with the files you already have and changes them only through pull requests you approve.

Your files, your formats

ICU and i18next JSON, Vue I18n, Rails YAML, gettext PO, Markdown and MDX, or an adapter of your own. Catalogues stay ordinary files that your build already reads.

Every change is a pull request

The wizard, the workbench, nightly corrections and translation tasks all end in a pull request. Nothing reaches your default branch until someone merges it.

You pay for what changed

About US$0.02 per 1,000 strings per language with the default Translator route. Unchanged strings are never sent again, the translation memory costs nothing, and checks make no model calls.

Available on every plan, billed as model usage.

Work with the agencies and tools you already use

Export the strings that need work, or all of them, and import the translations back. Placeholders and plural messages travel exactly as written, and every imported row is checked before it is kept.

XLIFF 1.2
.xlfOne language per file
XLIFF 2.0
.xlfOne language per file
Gettext PO
.poOne language per file
CSV
.csvEvery language in one file
Excel
.xlsxEvery language in one file
JSON
.jsonOne language per file
Apple String Catalog
.xcstringsEvery language in one file
Apple strings file
.stringsOne language per file
Android string resources
.xmlOne language per file
Flutter ARB
.arbOne language per file

Read the guides

Every step is documented, from the first scan of your repository to the nightly corrections.

  • Globalisation

    Make every project ready for every market. Its code works in any language and culture, its strings are translated, and every change is checked.

  • Internationalise a project

    Run the Internationalisation wizard to make a project multilingual. Coroid reads the repository, suggests languages and settings, and prepares one pull request.

  • Localisation workbench

    See where each project's languages stand, find the strings that need work, translate what is missing and commit it as one pull request.

  • The Globalisation check

    Check every change for missing and broken translations, for text and formatting in new code that assume one language or one culture, and, when you set it up, for pages that break in other languages.

  • Maintain translations with suggestions

    Let native speakers fix wording on your own site, review their suggestions, and apply them through normal pull requests.

  • World readiness and Culture

    Find what your existing code still assumes about one language or one culture, fix it in small tasks, and see what each market expects of dates, numbers, money, addresses and names.

  • Design for every market

    What each market expects of text, numbers, dates, money, sorting, names, addresses, units, input and layout, how to write code that gets it right, and which finding of the Globalisation check marks each habit that gets it wrong.

  • Pseudo-localisation

    Render your pages with a fake translation, accented, longer and reversed for right-to-left languages. You see text the catalogue missed, labels cut off and layout that doesn't mirror, before anyone translates.

Reach customers in their own language

Connect a repository, run the wizard and merge one pull request.