better-i18n Übersetzungsqualitätssicherung: Automatisierte Prüfungen in großem Maßstab
Erkennen Sie fehlende Übersetzungen, fehlerhafte Platzhalter und Inkonsistenzen, bevor sie in die Produktion gelangen.
Ihre Übersetzungen konsistent halten
Übersetzungsqualität bedeutet nicht nur, die Wörter richtig zu treffen -- es geht darum, sicherzustellen, dass jeder Key berücksichtigt wird, ungenutzte Keys bereinigt werden und Ihre Terminologie sprachübergreifend konsistent bleibt. better-i18n bietet mehrere Tools, die zusammenarbeiten, um die Übersetzungsqualität in Ihrem Projekt aufrechtzuerhalten.
CLI Scan: Hardcodierte Strings erkennen
Die erste Verteidigungslinie ist der scan-Befehl. Er analysiert Ihre Codebasis mittels AST-Analyse, um Strings zu finden, die übersetzt werden sollten, aber nicht in Übersetzungsfunktionen eingebettet sind.
better-i18n scan --dir ./src
Der Scanner erkennt:
- Hardcodierter JSX-Text (
<h1>Hello</h1>) - Hardcodierte JSX-Attribute (
<img alt="Logo" />) - Toast- und Benachrichtigungs-Strings
- Locale-abhängige ternäre Ausdrücke
- String-Variablen mit benutzerseitigem Text
Er ist intelligent genug, um CSS-Klassen, URLs, HTML-Entities und technische Konstanten zu ignorieren -- sodass die Ergebnisse auf tatsächliche Übersetzungslücken fokussiert sind, nicht auf False Positives.
Verwenden Sie --ci, um dies in Ihre Build-Pipeline zu integrieren und PRs zu blockieren, die neue hardcodierte Strings einführen:
npx @better-i18n/cli scan --ci
CLI Sync: Fehlende und ungenutzte Keys finden
Der sync-Befehl vergleicht die Verwendung von Übersetzungs-Keys in Ihrer Codebasis mit dem, was in better-i18ns Cloud vorhanden ist:
better-i18n sync
Er erstellt einen übersichtlichen Bericht, der Folgendes zeigt:
- Fehlt in Remote: Keys, die Ihr Code verwendet, aber noch nicht in better-i18n hochgeladen wurden
- Ungenutzt im Code: Keys in better-i18n, auf die in Ihrem Quellcode nicht mehr verwiesen wird
Dies ist nach Refactorings sehr wertvoll -- Sie sehen sofort, welche Keys verwaist sind und bereinigt werden können, und welche neuen Keys Übersetzungen benötigen, bevor Sie deployen.
Das Flag --summary gibt Ihnen einen schnellen Gesundheitscheck:
better-i18n sync --summary
Dies zeigt Abdeckungsprozentsätze (lokal-zu-remote und remote-genutzt), sodass Sie auf einen Blick sehen, wie vollständig Ihre Übersetzungen sind.
Glossar: Terminologische Konsistenz
Das Glossar erzwingt konsistente Terminologie über alle Übersetzungen hinweg. Wenn Sie Markenbegriffe, Produktnamen oder fachspezifisches Vokabular im Glossar definieren, respektieren KI-Übersetzungen diese Definitionen automatisch.
Dies verhindert das häufige Problem, bei dem dasselbe Konzept in Ihrer App unterschiedlich übersetzt wird -- „Workspace" an einer Stelle, „Arbeitsbereich" an einer anderen und „Projektbereich" an einer dritten.
Dashboard-Abdeckungsübersicht
Das better-i18n-Dashboard zeigt die Übersetzungsabdeckung pro Sprache und pro Namespace. Sie sehen auf einen Blick:
- Welche Sprachen vollständig übersetzt sind
- Welche Namespaces Lücken haben
- Wie viele Keys in jedem Teil Ihres Projekts vorhanden sind
Dies gibt Produktmanagern und Engineering-Leads einen klaren Überblick über den Lokalisierungsstatus, ohne CLI-Befehle ausführen zu müssen.
CI-Integration für Quality Gates
Kombinieren Sie scan und sync in Ihrer CI-Pipeline, um Quality Gates zu erstellen, die verhindern, dass Übersetzungsprobleme die Produktion erreichen:
name: i18n Quality
on: [push, pull_request]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npx @better-i18n/cli scan --ci
- run: |
npx @better-i18n/cli sync --format json \
| jq -e '.comparison.missingCount == 0' > /dev/null || exit 1
Für Pre-commit-Hooks scannen Sie nur staged Dateien für schnelles Feedback:
npx @better-i18n/cli scan --staged --ci
Was wir (noch) nicht anbieten
Um den aktuellen Umfang der Quality-Tooling klar darzustellen:
- Kein Inline-QA-Engine -- es gibt keine Echtzeit-Validierung von Platzhaltern, HTML-Tags oder ICU MessageFormat im Editor. Die CLI erkennt fehlende Übersetzungen auf Code-Ebene.
- Kein benutzerdefiniertes Regelsystem -- Sie können heute keine benutzerdefinierten Validierungsregeln (wie Längenlimits oder verbotene Zeichen) definieren.
- Keine Platzhaltervalidierung -- das System überprüft nicht, ob
{name}in der Quelle in der Übersetzung erscheint. - Kein visueller Kontext -- Qualitätsprüfungen arbeiten auf Key/Value-Daten, nicht auf gerenderten UI-Screenshots.
Dies sind Bereiche, die wir für die zukünftige Entwicklung evaluieren.
Erste Schritte
Installieren Sie die CLI und führen Sie Ihre erste Qualitätsprüfung durch:
npm install -g @better-i18n/cli
better-i18n scan --dir ./src
better-i18n sync --summary
Richten Sie Glossareinträge im Dashboard ein, um Konsistenz bei KI-Übersetzungen zu erzwingen, und integrieren Sie die CLI in Ihre CI-Pipeline für automatisierte Quality Gates.
Erstellen Sie Ihr Konto, um die Übersetzungsqualität in Ihren Projekten zu verwalten.