@better-intl/cli
v0.11.1
Published
CLI for better-intl — extract, validate, compile translations
Readme
@better-intl/cli
CLI for better-intl — extract, validate, compile translations.
Install
npm install -D @better-intl/cliConfiguration
Create better-intl.config.json at your project root:
{
"defaultLocale": "en",
"locales": ["en", "pt-BR", "es"],
"catalogs": "./locales/{locale}.json",
"include": ["src/**/*.tsx", "app/**/*.tsx"]
}Also supports better-intl.config.js, .better-intlrc.json, or a "better-intl" key in package.json.
Commands
i18n extract
Scans source files and generates/updates locale catalogs:
i18n extract✦ Extracted 12 messages from 5 files
locales/en.json — 3 added, 0 removed
locales/pt-BR.json — 3 added, 0 removedi18n validate
Checks all locales for missing translations:
i18n validatei18n missing
Shows missing translation count per locale:
i18n missingi18n dead-keys
Finds keys in catalogs that are no longer in source:
i18n dead-keysi18n compile
Compiles catalogs into optimized JS modules:
i18n compilei18n show
Displays all translations in a table:
i18n showi18n dev
Opens an interactive translation dashboard in the terminal:
i18n dev better-intl dashboard
12 keys · 3 locales · 9 extracted · 3 manual
EXTRACTED FROM SOURCE
Source Default en pt-BR es
──────────────────────────────────────────────────────────────────────
Hero.tsx:3 <h1> Hello world ─ ✓ ✗
COVERAGE
en ████████████████████ 100% (12/12)
pt-BR ████████████░░░░░░░░ 60% (7/12)
es ██░░░░░░░░░░░░░░░░░░ 10% (1/12)Programmatic API
All commands are also available as functions:
import { loadConfig, extractCommand, validateCommand } from "@better-intl/cli";
const config = await loadConfig(process.cwd());
await extractCommand(config, process.cwd());License
MIT
