better-i18n per le Aziende: Scala la Tua Infrastruttura di Localizzazione
Quando il tuo prodotto viene distribuito in più lingue, la localizzazione diventa infrastruttura — non un progetto una tantum. Hai bisogno di accesso programmatico, integrazione CI/CD, applicazione coerente della terminologia e visibilità su ciò che è tradotto, ciò che è in sospeso e ciò che manca.
better-i18n è una piattaforma di gestione delle traduzioni API-first progettata per team di ingegneria. Fornisce i componenti fondamentali — REST API, Content SDK, strumenti CLI, server MCP, distribuzione CDN e integrazione GitHub — per rendere la localizzazione una parte naturale del tuo flusso di sviluppo.
Cosa Ottengono Realmente i Team Aziendali
Architettura API-First
Ogni funzionalità di better-i18n è disponibile tramite REST API. I tuoi strumenti interni, le pipeline CI e i flussi di lavoro personalizzati possono interagire con la piattaforma in modo programmatico:
API di Gestione Traduzioni (dash.better-i18n.com/api):
| Operazione | Cosa Fa |
|---|---|
| listKeys | Interrogare le chiavi di traduzione con filtri di ricerca, namespace e stato |
| createKeys | Creare chiavi con testo sorgente e traduzioni iniziali |
| updateKeys | Aggiornare le traduzioni per chiavi esistenti in più lingue |
| deleteKeys | Eliminare temporaneamente le chiavi non più in uso |
| listProjects | Elencare tutti i progetti della tua organizzazione |
| getProject | Ottenere i dettagli del progetto inclusi lingue e namespace |
Content SDK (@better-i18n/sdk):
Un query builder in stile Supabase per recuperare voci di contenuto localizzate:
import { createClient } from "@better-i18n/sdk";
const client = createClient({
project: "your-org/your-project",
apiKey: process.env.BETTER_I18N_CONTENT_API_KEY,
});
// Recuperare i post del blog pubblicati in francese
const { data, total, hasMore } = await client
.from("blog-posts")
.eq("status", "published")
.language("fr")
.order("publishedAt", { ascending: false })
.limit(20);
L'SDK è zero-dependency, completamente tipizzato in TypeScript e funziona in qualsiasi runtime JavaScript.
Distribuzione CDN
Le traduzioni vengono servite dalla rete edge di Cloudflare a:
https://cdn.better-i18n.com/{org}/{project}/{locale}/{namespace}.json
Distribuzione in meno di 100ms a livello mondiale. Aggiorna le traduzioni nella dashboard o tramite API, e saranno disponibili sul CDN senza ridistribuire la tua applicazione.
Integrazione GitHub
better-i18n si sincronizza con i tuoi repository:
- Sincronizzazione tramite webhook — Gli eventi push attivano l'aggiornamento dei file di traduzione
- Flusso di lavoro pull request — Gli aggiornamenti delle traduzioni vengono inviati come PR che controlli tu
- Permessi minimi — Lettura/scrittura solo sui pattern dei file di traduzione configurati (es.:
locales/**/*.json) - Controllo completo del merge — Decidi tu quando le traduzioni entrano nel tuo codebase
CLI per il Flusso di Lavoro degli Sviluppatori
Il @better-i18n/cli si integra nel tuo processo di sviluppo:
# Rilevare stringhe hardcoded nel tuo codice React/Next.js
npx @better-i18n/cli scan --ci
# Confrontare le chiavi di traduzione locali con il tuo progetto cloud
npx @better-i18n/cli sync --format json
Aggiungi scan ai tuoi hook di pre-commit o alla pipeline CI. Usa sync per verificare la copertura delle traduzioni prima dei rilasci.
Server MCP per la Traduzione Assistita dall'IA
Due server MCP collegano i tuoi strumenti di IA direttamente al tuo workspace di traduzione:
| Pacchetto | Strumenti | Scopo |
|---|---|---|
| @better-i18n/mcp | 11 tools | Gestione traduzioni (chiavi, traduzioni, pubblicazione) |
| @better-i18n/mcp-content | 17 tools | Gestione contenuti (modelli, voci, contenuto localizzato) |
Funziona con Claude, Cursor, Windsurf e qualsiasi strumento IA compatibile con MCP. Il tuo assistente IA può creare chiavi, aggiornare traduzioni e gestire contenuti senza uscire dall'IDE.
Sicurezza e Controllo degli Accessi
Infrastruttura
- Cloudflare Workers — Elaborazione edge con protezione DDoS integrata
- PlanetScale MySQL — Database serverless con backup automatici
- Cloudflare R2 — Object storage per i file di traduzione
Crittografia
- A riposo: Crittografia AES-256
- In transito: TLS 1.3 per tutte le connessioni
Autenticazione
- Dashboard: GitHub OAuth (nessuna password salvata)
- API: Autenticazione tramite token Bearer con chiavi hashate usando bcrypt
- Scope delle chiavi: Le chiavi API possono essere limitate a progetti specifici
- Gestione delle chiavi: Revoca istantanea dalla dashboard
Controllo degli Accessi
- Controllo degli accessi basato sui ruoli (RBAC) a livello di organizzazione e progetto
- Log di audit per tutte le operazioni sensibili
- Principio del minimo privilegio per tutti gli accessi interni
Conformità
| Standard | Stato |
|---|---|
| GDPR | Conforme — Accordi di trattamento dei dati disponibili, diritto alla cancellazione supportato, esportazione dati su richiesta |
| SOC 2 Type II | In corso — stiamo lavorando per ottenere la certificazione |
Nota di trasparenza: Non siamo ancora certificati SOC 2 Type II. I nostri fornitori di infrastruttura (Cloudflare, PlanetScale) possiedono certificazioni SOC 2 Type II e ISO 27001. Manteniamo pratiche di sicurezza allineate a questi standard e stiamo perseguendo la nostra certificazione. Per informazioni dettagliate, consulta la nostra documentazione sulla sicurezza.
Supporto Framework
| Framework | Pacchetto | Punti di Forza |
|---|---|---|
| Next.js (App Router & Pages) | @better-i18n/next | Server components, routing tramite middleware |
| TanStack Start | @better-i18n/use-intl | SSR, routing basato su file con parametro $locale |
| Vite + React | @better-i18n/use-intl | SPA con cambio lingua lato client |
| Expo (React Native) | @better-i18n/expo | Cache offline, localizzazioni dinamiche, aggiornamenti OTA |
Tutte le integrazioni framework utilizzano le stesse chiavi di traduzione e namespace, così le tue applicazioni web e mobile condividono un'unica fonte di verità.
Gestione Traduzioni per Team Multipli
Organizzazione per Namespace
Organizza le traduzioni per team, funzionalità o tipo di contenuto:
your-org/your-project
├── auth/ → Team autenticazione
├── dashboard/ → Team prodotto
├── marketing/ → Team marketing
├── help/ → Team supporto
└── onboarding/ → Team crescita
Ogni namespace può avere progressi di traduzione e flussi di revisione indipendenti.
Gestione del Glossario
Definisci termini del brand, nomi dei prodotti e vocabolario tecnico una sola volta. Il glossario garantisce coerenza in tutte le traduzioni:
- Termini approvati — Imposta la traduzione corretta per la terminologia del tuo prodotto in ogni lingua
- Regole di non-traduzione — Contrassegna nomi di brand, termini tecnici e abbreviazioni che devono rimanere nella lingua sorgente
- Avvisi di coerenza — I traduttori ricevono notifiche quando utilizzano alternative non approvate
Traduzione IA con Contesto
La traduzione IA rispetta il tuo glossario e il contesto del namespace. Usala per:
- Generazione della prima bozza — L'IA produce traduzioni che seguono la tua terminologia, poi i revisori umani perfezionano
- Traduzione in blocco — Traduci un intero namespace in una nuova lingua in pochi minuti
- Selezione del modello — Scegli tra GPT-4o, Claude, Gemini o DeepL in base alle tue preferenze di qualità
Pattern di Scalabilità per Grandi Organizzazioni
Struttura Multi-Progetto
Le organizzazioni aziendali hanno spesso più prodotti. Ognuno riceve il proprio progetto better-i18n con namespace, glossari e accessi del team indipendenti:
your-org/web-app
your-org/mobile-app
your-org/marketing-site
your-org/help-center
Il Content SDK e la REST API funzionano su tutti i progetti utilizzando la stessa autenticazione.
Integrazione 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
Blocca le PR che introducono stringhe non tradotte. Verifica la copertura delle traduzioni ad ogni push.
Gestione dei Contenuti su Larga Scala
Il Content SDK supporta pattern CMS headless per contenuti localizzati:
// Recuperare tutti gli articoli di aiuto pubblicati in tedesco
const { data: articles, total } = await client
.from("help-articles")
.eq("status", "published")
.language("de")
.order("updatedAt", { ascending: false })
.limit(50);
// Recuperare un singolo articolo con la relazione autore espansa
const { data: article } = await client
.from("help-articles")
.language("de")
.expand("author", "category")
.single("getting-started");
Il query builder è immutabile, completamente tipizzato e restituisce risultati paginati con metadati total e hasMore.
Cosa Non Offriamo (Ancora)
Crediamo nella trasparenza riguardo alle nostre capacità attuali:
- SSO/SAML — Non ancora disponibile. L'autenticazione avviene attualmente tramite GitHub OAuth. SSO è nella nostra roadmap.
- Distribuzione on-premises — Siamo una piattaforma SaaS ospitata nel cloud. Le opzioni self-hosted non sono attualmente disponibili.
- Residenza dati personalizzata — I dati vengono elaborati attraverso la rete globale di Cloudflare e archiviati in PlanetScale. L'hosting specifico per regione non è ancora disponibile.
- SLA dedicato — Attualmente non offriamo SLA contrattuali di uptime con penalità finanziarie.
Se uno di questi punti è un ostacolo per la tua organizzazione, contattaci per discutere i tuoi requisiti e le tempistiche della nostra roadmap.
Inizia Subito
- Crea la tua organizzazione su dash.better-i18n.com
- Configura il tuo primo progetto e imposta le lingue
- Installa il CLI —
npm install -D @better-i18n/cli - Connetti GitHub — Abilita la sincronizzazione per i tuoi file di traduzione
- Aggiungi il server MCP — Dai ai tuoi strumenti IA accesso alle tue traduzioni
- Integra l'SDK — Usa
@better-i18n/next,@better-i18n/use-intlo@better-i18n/exponella tua applicazione
Inizia gratuitamente — nessuna carta di credito richiesta. L'API, il CLI, il server MCP e tutte le integrazioni framework sono disponibili su tutti i piani. Consulta la nostra documentazione per guide dettagliate alla configurazione.