better-i18n pour l'entreprise : Faites évoluer votre infrastructure de localisation
Quand votre produit est distribué en plusieurs langues, la localisation devient une infrastructure — pas un projet ponctuel. Vous avez besoin d'un accès programmatique, d'une intégration CI/CD, d'une terminologie cohérente et d'une visibilité sur ce qui est traduit, en attente ou manquant.
better-i18n est une plateforme de gestion des traductions API-first, conçue pour les équipes d'ingénierie. Elle fournit les briques essentielles — REST API, Content SDK, outils CLI, serveur MCP, distribution CDN et intégration GitHub — pour intégrer la localisation de manière fluide dans votre workflow de développement.
Ce que les équipes Enterprise obtiennent concrètement
Architecture API-First
Chaque fonction de better-i18n est disponible via REST API. Vos outils internes, pipelines CI et workflows personnalisés peuvent interagir avec la plateforme de manière programmatique :
API de gestion des traductions (dash.better-i18n.com/api) :
| Opération | Description |
|---|---|
| listKeys | Rechercher des clés de traduction avec filtres de recherche, namespace et statut |
| createKeys | Créer des clés avec le texte source et les traductions initiales |
| updateKeys | Mettre à jour les traductions de clés existantes dans toutes les langues |
| deleteKeys | Supprimer en douceur les clés qui ne sont plus utilisées |
| listProjects | Lister tous les projets de votre organisation |
| getProject | Obtenir les détails du projet, y compris les langues et namespaces |
Content SDK (@better-i18n/sdk) :
Un query builder de type Supabase pour récupérer des entrées de contenu localisées :
import { createClient } from "@better-i18n/sdk";
const client = createClient({
project: "your-org/your-project",
apiKey: process.env.BETTER_I18N_CONTENT_API_KEY,
});
// Récupérer les articles de blog publiés en français
const { data, total, hasMore } = await client
.from("blog-posts")
.eq("status", "published")
.language("fr")
.order("publishedAt", { ascending: false })
.limit(20);
Le SDK est sans dépendances, entièrement typé en TypeScript et fonctionne dans n'importe quel runtime JavaScript.
Distribution CDN
Les traductions sont servies depuis le réseau edge de Cloudflare à l'adresse :
https://cdn.better-i18n.com/{org}/{project}/{locale}/{namespace}.json
Livraison en moins de 100 ms dans le monde entier. Mettez à jour les traductions dans le tableau de bord ou via l'API, et elles sont disponibles sur le CDN sans redéployer votre application.
Intégration GitHub
better-i18n se synchronise avec vos dépôts :
- Synchronisation déclenchée par webhook — Les événements push déclenchent la mise à jour des fichiers de traduction
- Workflow de pull request — Les mises à jour de traduction sont soumises sous forme de PR que vous contrôlez
- Permissions minimales — Lecture/écriture uniquement sur les patterns de fichiers de traduction configurés (ex.
locales/**/*.json) - Contrôle total du merge — Vous décidez quand les traductions intègrent votre codebase
CLI pour le workflow développeur
La @better-i18n/cli s'intègre dans votre processus de développement :
# Détecter les chaînes codées en dur dans votre code React/Next.js
npx @better-i18n/cli scan --ci
# Comparer les clés de traduction locales avec votre projet cloud
npx @better-i18n/cli sync --format json
Ajoutez scan à vos hooks pre-commit ou votre pipeline CI. Utilisez sync pour auditer la couverture de traduction avant les releases.
Serveur MCP pour la traduction assistée par IA
Deux serveurs MCP connectent vos outils IA directement à votre espace de travail de traduction :
| Package | Outils | Fonction |
|---|---|---|
| @better-i18n/mcp | 11 outils | Gestion des traductions (clés, traductions, publication) |
| @better-i18n/mcp-content | 17 outils | Gestion du contenu (modèles, entrées, contenu localisé) |
Fonctionne avec Claude, Cursor, Windsurf et tout outil IA compatible MCP. Votre assistant IA peut créer des clés, mettre à jour les traductions et gérer le contenu sans quitter l'IDE.
Sécurité et contrôle d'accès
Infrastructure
- Cloudflare Workers — Edge computing avec protection DDoS intégrée
- PlanetScale MySQL — Base de données serverless avec sauvegardes automatiques
- Cloudflare R2 — Stockage objet pour les fichiers de traduction
Chiffrement
- Au repos : Chiffrement AES-256
- En transit : TLS 1.3 pour toutes les connexions
Authentification
- Tableau de bord : GitHub OAuth (aucun mot de passe stocké)
- API : Authentification par Bearer token avec clés hachées via bcrypt
- Portée des clés : Les clés API peuvent être limitées à des projets spécifiques
- Gestion des clés : Révocation instantanée depuis le tableau de bord
Contrôle d'accès
- Contrôle d'accès basé sur les rôles (RBAC) au niveau de l'organisation et du projet
- Journaux d'audit pour toutes les opérations sensibles
- Principe du moindre privilège pour tous les accès internes
Conformité
| Standard | Statut |
|---|---|
| GDPR | Conforme — Accords de traitement des données disponibles, droit à l'effacement pris en charge, export de données sur demande |
| SOC 2 Type II | En cours — nous travaillons à l'obtention de la certification |
Note de transparence : Nous ne sommes pas encore certifiés SOC 2 Type II. Nos fournisseurs d'infrastructure (Cloudflare, PlanetScale) détiennent les certifications SOC 2 Type II et ISO 27001. Nous maintenons des pratiques de sécurité alignées sur ces standards et poursuivons notre propre certification. Pour plus d'informations, consultez notre documentation sécurité.
Prise en charge des frameworks
| Framework | Package | Points forts |
|---|---|---|
| Next.js (App Router & Pages) | @better-i18n/next | Server Components, routage middleware |
| TanStack Start | @better-i18n/use-intl | SSR, routage basé sur les fichiers avec paramètre $locale |
| Vite + React | @better-i18n/use-intl | SPA avec changement de locale côté client |
| Expo (React Native) | @better-i18n/expo | Cache hors ligne, localisations dynamiques, mises à jour OTA |
Toutes les intégrations framework utilisent les mêmes clés de traduction et namespaces, garantissant une source de vérité unique pour vos applications web et mobiles.
Gestion des traductions multi-équipes
Organisation par namespace
Organisez les traductions par équipe, fonctionnalité ou type de contenu :
your-org/your-project
├── auth/ → Équipe authentification
├── dashboard/ → Équipe produit
├── marketing/ → Équipe marketing
├── help/ → Équipe support
└── onboarding/ → Équipe croissance
Chaque namespace peut avoir ses propres workflows d'avancement et de révision des traductions.
Gestion du glossaire
Définissez les termes de marque, noms de produits et vocabulaire technique une seule fois. Le glossaire garantit la cohérence de toutes les traductions :
- Termes approuvés — Définissez la traduction correcte de votre terminologie produit dans chaque langue
- Règles de non-traduction — Marquez les noms de marque, termes techniques et abréviations qui doivent rester dans la langue source
- Alertes de cohérence — Les traducteurs reçoivent des notifications lorsqu'ils utilisent des alternatives non approuvées
Traduction IA avec contexte
La traduction IA respecte votre glossaire et le contexte du namespace. Utilisez-la pour :
- Génération de premiers jets — L'IA produit des traductions qui suivent votre terminologie, puis les réviseurs humains affinent
- Traduction en masse — Traduisez un namespace entier dans une nouvelle langue en quelques minutes
- Choix du modèle — Choisissez entre GPT-4o, Claude, Gemini ou DeepL selon vos préférences de qualité
Patterns de montée en charge pour les grandes organisations
Structure multi-projets
Les organisations enterprise ont souvent plusieurs produits. Chacun dispose de son propre projet better-i18n avec des namespaces, glossaires et accès d'équipe indépendants :
your-org/web-app
your-org/mobile-app
your-org/marketing-site
your-org/help-center
Le Content SDK et la REST API fonctionnent sur tous les projets avec la même authentification.
Intégration CI/CD
# .github/workflows/i18n-check.yml
name: Translation Coverage Check
on: [push, pull_request]
jobs:
i18n:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "20"
- run: npx @better-i18n/cli scan --ci
- run: npx @better-i18n/cli sync --format json
Bloquez les PR qui introduisent des chaînes non traduites. Auditez la couverture de traduction à chaque push.
Gestion de contenu à grande échelle
Le Content SDK prend en charge les patterns de CMS headless pour le contenu localisé :
// Récupérer tous les articles d'aide publiés en allemand
const { data: articles, total } = await client
.from("help-articles")
.eq("status", "published")
.language("de")
.order("updatedAt", { ascending: false })
.limit(50);
// Récupérer un article unique avec les relations auteur et catégorie étendues
const { data: article } = await client
.from("help-articles")
.language("de")
.expand("author", "category")
.single("getting-started");
Le query builder est immuable, entièrement typé et retourne des résultats paginés avec les métadonnées total et hasMore.
Ce que nous ne proposons pas (encore)
Nous croyons en la transparence sur nos capacités actuelles :
- SSO/SAML — Pas encore disponible. L'authentification se fait actuellement via GitHub OAuth. Le SSO est dans notre feuille de route.
- Déploiement on-premises — Nous sommes une plateforme SaaS hébergée dans le cloud. Les options auto-hébergées ne sont pas disponibles actuellement.
- Résidence des données personnalisée — Les données sont traitées via le réseau mondial de Cloudflare et stockées dans PlanetScale. L'hébergement par région n'est pas encore disponible.
- SLA dédié — Nous ne proposons pas actuellement de SLA de disponibilité contractuels avec pénalités financières.
Si l'un de ces points est bloquant pour votre organisation, contactez-nous pour discuter de vos besoins et de notre calendrier de feuille de route.
Pour commencer
- Créez votre organisation sur dash.better-i18n.com
- Configurez votre premier projet et définissez les langues
- Installez la CLI —
npm install -D @better-i18n/cli - Connectez GitHub — Activez la synchronisation pour vos fichiers de traduction
- Ajoutez le serveur MCP — Donnez à vos outils IA l'accès à vos traductions
- Intégrez le SDK — Utilisez
@better-i18n/next,@better-i18n/use-intlou@better-i18n/expodans votre application
Commencez gratuitement — aucune carte bancaire requise. L'API, la CLI, le serveur MCP et toutes les intégrations framework sont disponibles sur chaque offre. Consultez notre documentation pour des guides d'installation détaillés.