Ingénierie//14 min de lecture

Localisation API-First : Intégrer la Traduction dans votre Workflow de Développement

Eray Gündoğmuş
Partager

Localisation API-First : Intégrer la Traduction dans votre Workflow de Développement

Points Clés

  • La localisation API-first remplace l'échange manuel de fichiers par une synchronisation automatisée entre votre base de code et le système de gestion des traductions
  • Les outils CLI et les intégrations CI/CD permettent des workflows push/pull qui maintiennent les traductions synchronisées à chaque déploiement
  • Les notifications basées sur les webhooks déclenchent des builds lorsque les traductions sont mises à jour, permettant une localisation continue
  • Les approches API-first réduisent le délai de mise sur le marché pour les nouvelles langues de plusieurs semaines à quelques heures

Qu'est-ce que la Localisation API-First ?

La localisation API-first est une approche dans laquelle le système de gestion des traductions (TMS) fournit un accès programmatique à tous les workflows de traduction via des REST APIs, des outils CLI et des webhooks. Au lieu d'exporter/importer manuellement des fichiers de traduction, les développeurs intègrent la synchronisation des traductions directement dans leurs pipelines de build et de déploiement.

Le Workflow Traditionnel vs. API-First

Traditionnel (Basé sur les Fichiers)

  1. Le développeur exporte les chaînes sources vers un fichier (JSON, XLIFF, etc.)
  2. Le fichier est téléchargé dans le TMS ou envoyé aux traducteurs par e-mail
  3. Les fichiers traduits sont retournés après des jours/semaines
  4. Le développeur télécharge et place les fichiers dans les bons répertoires
  5. Le développeur fait un commit et déploie

Problèmes : Étapes manuelles, dérive de version, conflits de merge, cycles lents.

API-First

  1. Le développeur pousse les nouvelles chaînes via CLI : better-i18n push
  2. Le TMS notifie les traducteurs du nouveau contenu
  3. Les traducteurs travaillent dans l'éditeur TMS avec le contexte complet
  4. Le webhook déclenche le CI/CD lorsque les traductions sont terminées
  5. Le build récupère les dernières traductions : better-i18n pull
  6. Le déploiement inclut automatiquement les traductions mises à jour

Avantages : Pas de gestion manuelle de fichiers, synchronisation continue, cycles plus rapides.

Composants Principaux de la Localisation API-First

REST API

L'API du TMS fournit des endpoints pour :

POST /api/keys          — Créer de nouvelles clés de traduction
GET  /api/translations  — Récupérer les traductions pour un locale
PUT  /api/translations  — Mettre à jour les traductions
GET  /api/projects      — Lister les projets et leur statut
POST /api/upload        — Télécharger des fichiers sources
GET  /api/download      — Télécharger les fichiers traduits

Outil CLI

Un outil en ligne de commande qui encapsule l'API pour faciliter le travail des développeurs :

# Pousser les nouvelles chaînes sources vers le TMS
better-i18n push

# Récupérer les dernières traductions
better-i18n pull --locale=de,fr,ja

# Vérifier le statut des traductions
better-i18n status

# Scanner la base de code pour les chaînes non traduites
better-i18n scan

Webhooks

Notifications événementielles lorsque les traductions changent :

{
  "event": "translations.completed",
  "project": "my-app",
  "locale": "de",
  "completed_keys": 142,
  "total_keys": 142
}

Utilisez les webhooks pour déclencher des pipelines CI/CD, des notifications Slack ou des déploiements automatisés.

Intégration CI/CD

Intégrez la synchronisation des traductions dans votre pipeline de build :

# Exemple GitHub Actions
- name: Pull translations
  run: better-i18n pull --all
  env:
    BETTER_I18N_TOKEN: ${{ secrets.BETTER_I18N_TOKEN }}

- name: Build
  run: npm run build

Avantages de la Localisation API-First

AvantageImpact
Synchronisation automatiséePas de gestion manuelle de fichiers
Contrôle de versionLes traductions sont suivies avec le code
Livraison continueLes nouvelles traductions sont publiées à chaque déploiement
Expérience développeurWorkflow CLI/API familier
Mise sur le marché plus rapideNouvelles langues en heures, pas en semaines
Moins d'erreursPas de problèmes de format de fichier ni de fichiers mal placés

Modèles d'Implémentation

Modèle 1 : Pull au Moment du Build

Récupérez les traductions lors de l'étape de build. Les traductions sont intégrées dans l'application au moment du build.

Idéal pour : Les sites statiques, les pages pré-rendues, les applications mobiles.

Modèle 2 : Fetch à l'Exécution

Récupérez les traductions depuis l'API à l'exécution. Permet des mises à jour instantanées sans redéploiement.

Idéal pour : Les SPAs, les applications web dynamiques, le contenu en temps réel.

Modèle 3 : Hybride

Récupérez les traductions au moment du build pour le chargement initial, et obtenez les mises à jour à l'exécution pour les correctifs urgents.

Idéal pour : Les applications en production qui nécessitent à la fois performance et flexibilité.

FAQ

Dois-je changer mon format de fichier pour utiliser la localisation API-first ? Non. La plupart des plateformes TMS API-first prennent en charge les formats standards (JSON, XLIFF, YAML, .strings, .xml) et gèrent automatiquement la conversion de format.

Comment gérer les clés de traduction qui sont renommées ou supprimées ? La commande scan de la CLI détecte les clés inutilisées. Les endpoints de l'API permettent des opérations par lot sur les clés. La plupart des plateformes TMS suivent le cycle de vie des clés et signalent les traductions orphelines.

Que se passe-t-il si l'API est indisponible lors d'un build ? Utilisez des traductions en cache comme solution de repli. Stockez le dernier pull réussi dans le contrôle de version afin que les builds aient toujours une base, même si l'API est inaccessible.

Comment gérer les traductions pour plusieurs environnements ? Utilisez un namespacing au niveau du projet ou de la branche. Certaines plateformes TMS prennent en charge des remplacements spécifiques à l'environnement (staging, production) pour le même projet.

La localisation API-first convient-elle aux petits projets ? Oui. Le workflow CLI push/pull est plus simple que la gestion manuelle de fichiers même pour des projets avec quelques centaines de chaînes. La mise en place de l'intégration API est minimale par rapport au temps économisé.

Comments

Loading comments...