Přejít na obsah
i18n Doktor

i18n Doctor: Získejte kompletní zprávu o stavu překladu jedním příkazem

Spusťte nástroj better-i18n doctor, který analyzuje celý váš kód v pěti dimenzích – kvalita kódu, pokrytí překladu, přesnost zástupných symbolů, osamocené klíče a synchronizace CDN – a získáte jediné skóre stavu v rozmezí 0–100 s praktickými diagnostickými údaji.

$ better-i18n doctor
lepší-i18n · Zpráva i18n Doctor
████████████████░░░░82 / 100A
PASSED (threshold: 70)
Coverage95(3 issues)
Quality88(2 issues)
Code72(8 issues)
Structure100(clean)
Performance91(1 issue)

Pět vrstev analýzy v jediném průchodu

Doktor provádí skenování kódu, analýzu pokrytí, ověřování kvality, audit výkonu a kontrolu synchronizace CDN – vše najednou, s jednotným skóre.

Kód — Detekce pevně zakódovaných řetězců

Skenování založené na AST najde všechny řetězce určené pro uživatele, které nejsou zabalené v t(). Zachytí text JSX, atributy, ternární logiku locale, toastové zprávy a řetězcové proměnné.

Pokrytí — Chybějící překlady

Porovná klíče přítomné ve vašem zdrojovém locale s každým cílovým locale. Jakýkoli klíč, který v cílovém locale chybí, je nahlášen s přesným názvem jmenného prostoru a cestou.

Kvalita — Nesoulad zástupných symbolů

Ověřuje, zda jsou interpolační zástupné symboly konzistentní ve všech lokalitách. Podporuje formáty pojmenované {}, dvojité složená závorky {{}}, printf%s, šablona ${} a poziční {0}.

Výkon — Detekce sirotčích klíčů

Detekuje klíče, které existují ve vašich překladových souborech, ale nejsou nikdy odkazovány v kódu. Osamocené klíče zvyšují velikost datového obsahu a vytvářejí údržbové dluhy.

Synchronizace — Porovnání CDN

Porovnává klíče extrahované z vašeho kódu s klíči zveřejněnými v CDN. Odhaluje problémy s chybějícími vzdálenými klíči a nepoužívanými vzdálenými klíči, než se dostanou do produkce.

Jediné skóre pro zdraví vašeho překladu

Lékař vypočítá skóre od 0 do 100 na základě zjištěné diagnostiky. Chyby jsou penalizovány 3,0 body, zatímco příspěvek varování každého pravidla je omezen na 20 bodů – což zabraňuje tomu, aby jedno pravidlo s tisíci varováními vynulovalo celé vaše skóre.

Výchozí prahová hodnota pro úspěšné absolvování je 70 (známka B). Použijte --ci pro neúspěšné sestavení pod touto prahovou hodnotou nebo začněte s --report pro stanovení základního bodu před vynucením skóre.

Vzorec pro výpočet skóre
score = 100 - (errors × 3.0) - Σ min(rule_warnings × 0.15, 20)

Hodnotící prahy

A+≥ 90
Projít
A≥ 80
Projít
B≥ 70
Projít
C≥ 50
Selhání
F< 50
Selhání

Integrace CI/CD — Blokujte špatné překlady ještě před jejich odesláním

Přidejte lékaře do svého CI pipeline, aby zachytil regrese překladu při každém push. Automatické OIDC ověření v GitHub Actions znamená nulovou správu tajných údajů.

GitHub Actions s OIDC

Autentizujte se automaticky bez API klíčů pomocí GitHub Actions OIDC. Stačí přidat id-token: oprávnění k zápisu a spustit doctor --ci --report.

Prahové brány

Nastavte prahovou hodnotu pro úspěšnost (výchozí hodnota: 70) a v případě, že skóre klesne pod tuto hodnotu, stavbu ukončete. Sledování spusťte pomocí --report a poté vynuťte pomocí --ci.

Strojově čitelný JSON

Použijte --format json pro strukturovaný výstup, který můžete přesměrovat do jq, vlastních dashboardů nebo downstreamové automatizace ve vaší implementační pipeline.

Reporting na palubní desce

Výsledky nahrajte do panelu Better I18N pomocí příkazu --report, abyste mohli sledovat historii, analyzovat trendy a získat přehled o stavu i18n v rámci celého týmu.

# GitHub Actions example
- run: npx @better-i18n/cli doctor --ci --report

Kdy použít který příkaz

Doctor je komplexní volba. Použijte zaměřené příkazy, když potřebujete konkrétní kontrolu nebo chcete rychlejší zpětnou vazbu v háčcích před potvrzením.

doktor

Kompletní hodnocení stavu s pěti úrovněmi analýzy – jediný spolehlivý zdroj informací o stavu internacionalizace vašeho projektu.

skenovat

Zaměřená detekce pevně zakódovaných řetězců. Podporuje --staged pro háčky před potvrzením.

kontrola

Interaktivní kontrola chybějících nebo nepoužívaných překladových klíčů s naváděcími pokyny.

synchronizace

Úplné srovnání lokálního a vzdáleného stavu, které zobrazuje chybějící i nepoužívané klíče najednou.

Vytvořeno pro reálné pracovní postupy i18n

Skóre zdraví 0–100

Jednotné skóre s rozdělením podle kategorií a prahovou hodnotou CI pro úspěšnost/neúspěšnost. Sledujte stav svých překladů v průběhu času.

Sledování lexikálního rozsahu

Inteligentní detekce jmenného prostoru pro useTranslations i getTranslations. Každé volání t() je přiřazeno ke správnému jmennému prostoru.

Podpora serverových komponent

Plná podpora asynchronních serverových funkcí Next.js App Router. Volání getTranslations na straně serveru jsou detekována a kontrolována.

Konfigurovatelná pravidla

Zakázat nebo snížit úroveň pravidel v souboru i18n.config.ts. Nastavte pravidla na „error“, „warning“ nebo „off“ podle potřeb vašeho projektu.

Inteligentní filtrování

Automaticky ignoruje názvy tříd CSS, adresy URL, cesty importu a konstanty vývojáře. Pouze použitelné výsledky.

Podrobný auditní protokol

Hluboká transparentnost s --verbose. Shrnutí rozsahu, informace o časování a trasování řešení jmenných prostorů pro ladění.

Zjistěte si stav překladu před odesláním

Spusťte jednou nástroj better-i18n doctor, abyste získali výchozí hodnoty. Přidejte jej do CI, abyste už nikdy neodeslali chybějící překlady.