Die Lingo.dev CLI übersetzt Apps und Inhalte, indem sie eine einzige i18n.json-Konfigurationsdatei liest, übersetzbare Strings aus Ihren Quelldateien extrahiert und sie durch eine Lokalisierungs-Engine oder direkt über einen LLM-Anbieter leitet. Die Übersetzungen werden zurück auf die Festplatte geschrieben, und Änderungen werden nachverfolgt, damit beim nächsten Durchlauf nur das Delta verarbeitet wird.
Die Pipeline in fünf Schritten#
Wenn Sie npx lingo.dev@latest run ausführen, durchläuft die CLI nacheinander fünf Schritte:
Inhalte erkennen
Die CLI scannt Ihr Projekt auf Quell- und Zieldateien anhand der Bucket-Konfigurationen in i18n.json. Jeder Bucket definiert ein Dateiformat sowie Include-/Exclude-Muster, die der CLI zeigen, wo übersetzbare Inhalte liegen.
{
"locale": {
"source": "en",
"targets": ["es", "fr", "de"]
},
"buckets": {
"json": {
"include": ["locales/[locale].json"]
},
"markdown": {
"include": ["docs/[locale]/*.md"]
}
}
}Der Platzhalter [locale] wird zur Laufzeit in Ihre konfigurierten Quell- und Ziel-Sprachcodes aufgelöst.
Daten bereinigen
Nicht alle Inhalte müssen übersetzt werden. Die CLI filtert Werte heraus, die sprachübergreifend unverändert bleiben sollen – Zahlen, boolesche Werte, ISO-Daten, UUIDs, URLs und leere Strings. So wird die Nutzlast für das Übersetzungs-Backend kleiner, was Token-Verbrauch und Verarbeitungszeit reduziert.
Delta berechnen
Die CLI erstellt SHA-256-Fingerprints für jeden Quell-String und vergleicht sie mit dem vorherigen Status in i18n.lock. Nur neue oder geänderte Inhalte kommen in die Übersetzungs-Pipeline. Unveränderte Strings werden komplett übersprungen.
Dieser inkrementelle Ansatz bedeutet: In einem Projekt mit 10.000 Schlüsseln, von denen sich nur 12 geändert haben, werden auch nur diese 12 übersetzt – nicht der gesamte Bestand.
Lokalisierung
Das Delta wird an das konfigurierte Übersetzungs-Backend gesendet. Die CLI unterstützt zwei Modi:
| Modus | So funktioniert's |
|---|---|
| Lingo.dev Engine | Leitet Anfragen über Ihre Lokalisierungs-Engine und wendet dabei automatisch Markenstimme, Glossar, Anweisungen und Modellkonfiguration an. |
| Raw LLM provider | Sendet Übersetzungsanfragen mit einem benutzerdefinierten Prompt direkt an OpenAI, Anthropic, Google, Mistral, OpenRouter oder Ollama. |
Die CLI wiederholt fehlgeschlagene Anfragen mit exponentiellem Backoff, speichert Zwischenstände und verarbeitet mehrere Zielsprachen gleichzeitig.
Inhalte einfügen
Übersetzte Strings werden an exakt den Stellen zurück auf die Festplatte geschrieben, an denen sich der Quellinhalt befindet. Die CLI bewahrt Dateistruktur und Formatierung, damit nur minimale, gut prüfbare Diffs entstehen. Wenn Prettier in Ihrem Projekt konfiguriert ist, hält sich die Ausgabe an Ihre Formatierungsregeln.
Ausgabedateien#
Ein typischer Durchlauf erzeugt zwei Arten von Änderungen:
- Sprachdateien – Zieldateien mit neuen und geänderten Übersetzungen aktualisiert
i18n.lock– aktualisiert mit Inhalts-Fingerprints zur Nachverfolgung des Status
Beides sollte in die Versionskontrolle eingecheckt werden – entweder manuell oder automatisch über die CI/CD-Integration.
