# General Translation Knowledge Base: General Translation ou Locize : lequel choisir ?
URL: https://generaltranslation.com/fr/kb/general-translation-vs-locize.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Locize est un système de gestion de la traduction conçu par les créateurs d’i18next. Il diffuse les traductions depuis un CDN, collecte les nouvelles clés depuis votre application en cours d’exécution et propose la traduction par IA ainsi qu’un éditeur en contexte. Vous restez toutefois responsable de la bibliothèque d’i18n et de ses clés. General Translation peut servir de bibliothèque d’i18n et en assurer la traduction, ou traduire les fichiers i18next dont vous disposez déjà.
Category: Outils de workflow
Last updated: 2026-10-16
Authors: Kevin Wu, Jackie Chen
Published: 2026-10-16

Locize est un système de gestion de la traduction (TMS) développé par l’équipe à l’origine d’i18next. Votre application continue d’utiliser i18next (ou une autre bibliothèque d’i18n), Locize stocke les clés et leurs traductions, l’IA ou vos traducteurs complètent chaque langue, et l’application charge le résultat depuis le CDN de Locize : une traduction corrigée est ainsi mise en ligne sans redéploiement. Locize vient compléter votre bibliothèque d’i18n sans la remplacer ; la configuration initiale de la bibliothèque, les clés et leur intégration restent donc à la charge de vos ingénieurs. General Translation peut jouer les deux rôles : fournir ses propres bibliothèques d’i18n open source en plus de la traduction, ou se charger uniquement de traduire les fichiers i18next dont vous disposez déjà.

## Les points forts de Locize

* **Conçu pour i18next.** [`i18next-locize-backend`](https://github.com/locize/i18next-locize-backend) charge les traductions depuis le CDN de Locize et, grâce à l&#39;option `saveMissing` d&#39;i18next, envoie les nouvelles clés à Locize au fil du développement. [`i18next-cli`](https://github.com/i18next/i18next-cli) inclut des commandes Locize de synchronisation, de téléchargement et de migration, et sa commande `localize` encapsule les chaînes codées en dur dans `t()`, extrait les clés, connecte un projet Locize et demande une traduction par IA, le tout en une seule exécution.
* **Mises à jour sans redéploiement.** Les traductions sont publiées sur un CDN (un CDN Standard dans toutes les offres, un CDN Pro à partir de l&#39;offre Growth), avec une [durée de cache configurable par version](https://www.locize.com/docs/integration/cdn-types-standard-vs-pro) et une option de publication privée, accessible uniquement avec une clé d&#39;API.
* **Versions.** Un projet dispose d&#39;une version de travail `latest`, d&#39;une version `production` et d&#39;éventuelles versions personnalisées, comme `staging` ou une version par livraison d&#39;application mobile : vous pouvez ainsi promouvoir ou restaurer des traductions indépendamment du code. (Voir [la gestion des versions de Locize](https://www.locize.com/docs/versioning).)
* **Édition en contexte.** Le [paquet `locize`](https://github.com/locize/locize) ajoute une fenêtre d&#39;édition à votre site lorsque l&#39;URL contient `?incontext=true`, et les captures d&#39;écran sont associées aux clés par reconnaissance de texte.
* **IA et traduction automatique.** [Le service d&#39;IA de Locize](https://www.locize.com/ai), ou votre propre clé OpenAI, Gemini, Mistral ou DeepL, traduit en s&#39;appuyant sur votre guide de style, votre glossaire et votre mémoire de traduction, avec estimation de la qualité, révision par IA et workflow de révision humaine.
* **Clés de pluriel par langue.** Pour le JSON i18next, Locize [génère les clés de pluriel](https://www.locize.com/docs/integration/i18n-formats/pluralization) requises par chaque langue cible (comme `_few` et `_many` en polonais) et affiche toutes les formes dans son éditeur.
* **Au-delà d&#39;i18next.** [`locize-cli`](https://github.com/locize/locize-cli) importe et exporte de nombreux formats, dont XLIFF, Android XML, Apple `.strings`, PO, RESX, Fluent et les fichiers properties Java, et Locize publie des exemples pour react-intl, vue-i18n et Lingui. Il existe également une GitHub Action, un serveur MCP et un plugin Figma.

## Ce que Locize laisse encore à la charge de vos ingénieurs

Voici `saveMissing` avec `i18next` 26.4.7 et `i18next-locize-backend` 10.0.3, lors de l&#39;affichage en espagnol d&#39;une clé que Locize n&#39;a encore jamais vue. La fonction de requête simule les serveurs de Locize et journalise chaque appel :

```js title="test.mjs"
import i18next from 'i18next';
import Backend from 'i18next-locize-backend';

// CDN fictif : l’anglais et l’espagnol ont chacun une seule clé pour l’instant.
const cdn = {
  en: { inbox: { title: 'Inbox' } },
  es: { inbox: { title: 'Bandeja de entrada' } },
};

await i18next.use(Backend).init({
  lng: 'es',
  fallbackLng: 'en',
  saveMissing: true,
  backend: {
    projectId: 'demo-project',
    apiKey: 'demo-write-key', // clé d’écriture : développement uniquement
    referenceLng: 'en',
    allowedAddOrUpdateHosts: () => true,
    reloadInterval: false,
    request: async ({ url, method, body }) => {
      console.log(method, url, body ? JSON.stringify(body) : '');
      const lng = url.match(/latest\/(\w+)\//)?.[1];
      return { status: 200, data: JSON.stringify(method === 'GET' ? cdn[lng] ?? {} : {}) };
    },
  },
});

// Nouveau texte ajouté dans le code, avec une valeur par défaut en anglais
console.log(i18next.t('inbox.title'));
console.log(i18next.t('inbox.empty', 'No messages yet.'));
await new Promise((r) => setTimeout(r, 6000)); // saveMissing utilise un debounce
```

```text title="Output"
GET https://api.lite.locize.app/demo-project/latest/es/translation
GET https://api.lite.locize.app/demo-project/latest/en/translation
Bandeja de entrada
No messages yet.
POST https://api.lite.locize.app/missing/demo-project/latest/en/translation {"inbox.empty":"No messages yet."}
```

Cet exemple montre ce que `saveMissing` enregistre : la clé anglaise et sa valeur. La traduction et la publication n&#39;interviennent qu&#39;après cet enregistrement. Une intégration Locize enchaîne ces étapes :

1. Configurez i18next, attribuez une clé à chaque chaîne de caractères et appelez `t()` avec cette clé.
2. Envoyez les nouvelles clés à Locize avec `saveMissing` en développement (limité à `localhost` par défaut, et [la clé d&#39;écriture ne doit jamais partir en production](https://www.locize.com/docs/guides/going-to-production)) ou avec une commande de synchronisation en CI.
3. Traduisez avec l&#39;IA ou vos traducteurs, relisez les résultats, puis publiez-les dans la version que lit votre application.
4. Chargez les traductions depuis le CDN à l&#39;exécution, ou téléchargez-les dans votre compilation, puis déclarez chaque nouvelle langue dans l&#39;application.

Le contexte transmis à un traducteur ou à l&#39;IA se limite à la clé, à sa valeur anglaise, à une éventuelle note de contexte et aux [captures d&#39;écran qui lui sont associées](https://www.locize.com/docs/context), et non au composant qui affiche la chaîne de caractères.

Les forfaits Locize reposent sur un prix de base mensuel qui inclut un volume de mots, de téléchargements CDN, de langues, de namespaces et de versions. Les forfaits supérieurs proposent des blocs supplémentaires de mots et de téléchargements, tandis que la traduction par IA et la traduction automatique sont facturées au jeton ou au caractère. (Voir [la tarification Locize](https://www.locize.com/pricing), consultée en octobre 2026.)

## General Translation pour les équipes i18next

Inutile de réécrire quoi que ce soit pour essayer General Translation. La CLI détecte `i18next` dans votre `package.json` et traduit vos fichiers JSON tout en conservant la syntaxe d&#39;interpolation d&#39;i18next (ou la syntaxe ICU, si vous utilisez `i18next-icu`) :

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": [
    "es"
  ],
  "files": {
    "json": {
      "include": [
        "locales/[locale]/*.json"
      ]
    }
  }
}
```

[`npx gt translate --dry-run`](/docs/cli/reference/commands/translate) détecte `locales/en/translation.json`, et [`npx gt translate`](/docs/cli/reference/commands/translate) génère `locales/es/translation.json`. Utilisez ce workflow basé sur les fichiers pour les messages dont la structure de clés est identique dans la source et la cible. Un fichier de métadonnées associé permet d&#39;ajouter une note `context` ou une limite `maxChars` à n&#39;importe quelle clé. Consultez [Métadonnées associées aux clés](/docs/cli/reference/keyed-metadata).

Vous pouvez aussi aller plus loin et confier également la partie bibliothèque à General Translation. [`<T>`](/docs/react/reference/components/t) encapsule le JSX et le traduit sur place, et [`useGT`](/docs/react/reference/hooks/use-gt) gère les chaînes : plus besoin de nommer des clés. [`useTranslations`](/docs/react/reference/hooks/use-translations) propose un dictionnaire à clés pour les équipes qui le souhaitent. `gt-next`, `gt-react` et `gt-vue` sont sous licence MIT, ne reposent pas sur i18next et fonctionnent sans compte General Translation.

## Locize et General Translation en un coup d’œil

| Fonctionnalité                          | Locize                                                                                                                                                    | General Translation                                                                                                                                             |
| --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Description                             | Un TMS qui s’associe à i18next ou à une autre bibliothèque d’i18n                                                                                         | Des bibliothèques d’i18n open source associées à la traduction par IA, ou la traduction de vos fichiers existants                                               |
| Emplacement des chaînes                 | Les clés dans votre code, les valeurs dans Locize                                                                                                         | Dans votre code, à l’intérieur de [`<T>`](/docs/react/reference/components/t), ou dans vos fichiers de ressources existants                                     |
| Ajout des nouveaux textes               | `saveMissing` en développement, ou des commandes de synchronisation dans la CI                                                                            | [`npx gt translate`](/docs/cli/reference/commands/translate) lors de votre compilation, ou des pull requests [Locadex](/docs/platform/locadex/quickstart)       |
| Qui traduit                             | L’IA de Locize, votre propre clé d’IA ou de traduction automatique, ou vos traducteurs                                                                    | L’IA, alimentée par le contexte de votre code, du glossaire et des instructions personnalisées, avec relecture par votre équipe dans le tableau de bord         |
| Contexte de chaque chaîne de caractères | Clé, valeur en anglais, notes de contexte, captures d’écran, glossaire et guide de style                                                                  | Structure JSX balisée avec les bibliothèques intégrées ; métadonnées associées aux clés pour les catalogues ; glossaire et instructions personnalisées partagés |
| Livraison                               | CDN par défaut, avec gestion des versions ; ou téléchargement dans votre compilation                                                                      | Fichiers inclus dans le bundle, ou mises à jour publiées via le CDN de General Translation sans redéployer l’application                                        |
| Tarification                            | Formules par paliers selon le nombre de mots, de téléchargements CDN, de langues et de versions ; IA et traduction automatique en crédits supplémentaires | [Traduction facturée à l’usage](https://generaltranslation.com/pricing)                                                                                         |

## Pourquoi les équipes choisissent General Translation plutôt que Locize

General Translation permet à une équipe i18next d&#39;adopter d&#39;abord la génération de traductions et la relecture dans le tableau de bord, puis de passer au texte intégré lorsqu&#39;elle souhaite aussi se libérer de la maintenance des clés.

* **Plus rapide.** Lancez la traduction avant la compilation pour que les nouveaux textes soient livrés dans toutes les langues que vous prenez en charge. La CLI réutilise les traductions existantes et ne traduit que le contenu nouveau ou modifié ; ajouter une langue se résume à une ligne dans `gt.config.json`.
* **Moins coûteux à exploiter.** Partez des fichiers i18next que vous maintenez déjà. Migrer ensuite une fonctionnalité vers [`<T>`](/docs/react/reference/components/t) vous évite de nommer des clés et de garder un dictionnaire source synchronisé avec ses composants.
* **Meilleure qualité.** Ajoutez une note de contexte à une clé du catalogue, ou utilisez des blocs [`<T>`](/docs/react/reference/components/t) intégrés pour transmettre à la traduction la structure JSX de la phrase et ses branches de pluriel. Un [groupe de contexte](/docs/platform/dashboard/guides/defining-context-for-translations) partagé garantit une terminologie produit cohérente entre les projets d&#39;application et de documentation, et les relecteurs retouchent les résultats dans le tableau de bord.
* **Risque réduit.** Conservez i18next et vos traductions relues le temps d&#39;évaluer General Translation. Les fichiers de traduction intégrés au bundle n&#39;effectuent aucun appel à General Translation à l&#39;exécution ; ses bibliothèques JavaScript sous licence MIT fonctionnent également sans compte dès lors que vous fournissez les traductions.

Grâce à General Translation, Cursor est disponible dans plus de 14 paramètres régionaux, sur son site web comme dans sa documentation. (Voir les [déploiements en production](https://generaltranslation.com/enterprise).)

## Quand Locize est le meilleur choix

Choisissez Locize si vos traducteurs souhaitent modifier les textes directement sur le site en production, si vous conservez des versions de traduction distinctes pour chaque livraison de votre application mobile, ou si vous échangez des fichiers XLIFF, Fluent ou Java properties. Optez pour les bibliothèques intégrées de General Translation si vous voulez conserver un texte source lisible dans vos composants et que la structure JSX balisée soit prise en compte lors de la traduction. Pour évaluer la traduction et la relecture dans le tableau de bord avant de changer de bibliothèque, essayez sa CLI avec vos catalogues existants.

## Passer de Locize à General Translation

Téléchargez vos traductions actuelles avec `locize-cli` et conservez-les dans votre dépôt, puis faites pointer `gt.config.json` vers les fichiers en anglais et exécutez [`npx gt upload`](/docs/cli/reference/commands/upload) pour envoyer vos fichiers source et vos traductions existantes vers la plateforme. Vous pouvez ensuite conserver i18next et laisser la CLI traduire les nouvelles clés, ou migrer progressivement vers [`<T>`](/docs/react/reference/components/t), une fonctionnalité à la fois. (Voir [Migrer depuis d&#39;autres bibliothèques i18n](/docs/react/guides/migrating-i18n-libraries).) Vos termes de glossaire peuvent également être repris : l&#39;import dans un groupe de contexte prend en charge les fichiers CSV, TSV, JSON et texte.

## Points clés

* Locize, conçu par les créateurs d’i18next, est un TMS solide pour les applications i18next, avec distribution via CDN, `saveMissing`, gestion des versions, édition en contexte et traduction par IA.
* Il fonctionne avec votre bibliothèque d’i18n et ses catalogues à clés ; la traduction, la relecture et la publication s’organisent autour de ces catalogues.
* General Translation peut traduire vos fichiers i18next existants, ou faire office à la fois de bibliothèque d’i18n et de solution de traduction, en tenant compte du contexte du code et en livrant toutes les langues à chaque livraison.

## Related questions

- [General Translation vs i18next, react-intl et next-intl : quelle bibliothèque d’i18n choisir ?](https://generaltranslation.com/fr/kb/general-translation-vs-i18n-libraries.mdx): Les bibliothèques open source comme i18next, react-intl et next-intl ne traduisent rien. Elles affichent les traductions que vous leur fournissez dans un fichier de catalogue par langue, rédigées par vous, vos traducteurs ou un service tiers. Les bibliothèques de General Translation sont elles aussi open source et remplissent le même rôle, mais General Translation se charge en plus de la traduction, en s’appuyant sur votre code comme contexte.
- [Pourquoi utiliser General Translation plutôt qu’un TMS (Smartling, Lokalise, Phrase, Crowdin ou Transifex) ?](https://generaltranslation.com/fr/kb/general-translation-vs-tms.mdx): Un système de gestion de la traduction (TMS) comme Smartling, Lokalise, Phrase, Crowdin ou Transifex coordonne les traducteurs, mais les ingénieurs doivent toujours extraire les chaînes, les envoyer, attendre les traductions, puis les réintégrer dans le produit. General Translation traduit le contenu directement dans votre code, avec son contexte, fournit toutes les langues à chaque livraison et repose sur des bibliothèques open source, sans dépendance à un fournisseur.
- [General Translation ou Tolgee : lequel choisir ?](https://generaltranslation.com/fr/kb/general-translation-vs-tolgee.mdx): Tolgee associe messages à clés, édition en contexte et traduction par IA au sein d’une plateforme auto-hébergeable. General Translation conserve un texte lisible directement dans vos composants et génère les traductions à partir du JSX balisé, ce qui vous permet de publier de nouveaux contenus dans toutes les langues sans maintenir de clés de messages.
- [General Translation ou Weblate : lequel choisir ?](https://generaltranslation.com/fr/kb/general-translation-vs-weblate.mdx): Weblate est une plateforme de localisation auto-hébergeable basée sur Git, conçue pour traduire les fichiers d’un dépôt avec une communauté ou une équipe. General Translation intègre la génération des traductions au développement et aux livraisons, en s’appuyant sur du JSX balisé et un contexte produit partagé. Conservez vos fichiers gettext, ou adoptez la rédaction directement dans le code pour vous affranchir aussi de la maintenance du catalogue source.
- [Peut-on faire de l’i18n sans fichiers de traduction ?](https://generaltranslation.com/fr/kb/i18n-without-translation-files.mdx): Oui. Avec gt-react ou gt-next, le contenu reste intégré dans vos composants, à l’intérieur d’un composant `<T>`, et les traductions sont générées lors du build. Il n’y a donc ni clés ni fichiers JSON par paramètre régional à écrire et à garder synchronisés.

## Previous and next questions

- Previous question: [General Translation ou Lingui : lequel choisir ?](https://generaltranslation.com/fr/kb/general-translation-vs-lingui.mdx)
- Next question: [General Translation ou Mobility : lequel choisir ?](https://generaltranslation.com/fr/kb/general-translation-vs-mobility.mdx)

## Sitemap

See the [Knowledge Base sitemap](https://generaltranslation.com/fr/kb/sitemap.md) for every article.
