Skip to content

kanjou generate

Generates TypeScript definitions (.d.ts) based on your locale files to enable end-to-end type safety.

Usage

bash
npx kanjou generate [options]

Options

OptionAliasDescription
--locales-dir <dir>-lDirectory containing locale files.
--base-locale <name>-bBase locale name (e.g. en).
--localesForce generating locales.kanjou.d.ts.
--no-localesDisable generating locales.kanjou.d.ts.
--virtualForce generating virtual.kanjou.d.ts.
--no-virtualDisable generating virtual.kanjou.d.ts.

Example

bash
npx kanjou generate -l ./locales -b en

How it works

The generate command reads your base locale file, parses the MessageFormat 2 strings, and uses ts-morph to generate precise TypeScript types for your messages, including any variables and their expected types. This creates locales.kanjou.d.ts (for strong typing of your translation functions) and virtual.kanjou.d.ts (for Vite virtual module typing).

Released under the ISC License.