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.