SKILL.md
i18n Readiness Review Skill
Localizing a product that isn't internationalized fails expensively — translators hit hard-coded strings, layouts break on longer languages, dates show in the wrong format, and RTL shatters the UI. i18n is the engineering groundwork; localization is the content. This skill audits whether the product is ready, so you fix the foundations before paying to translate into the cracks.
Required Inputs
Ask for these only if they aren't already provided:
- The product — web/app/codebase, stack/framework (i18n tooling differs).
- Target languages — especially if any need RTL (Arabic/Hebrew), CJK (Chinese/Japanese/Korean), or are long (German/Finnish).
- What you can share — code snippets, UI screenshots, or a description of how strings/formatting are handled today.
Output Format
i18n Readiness: [product]
A readiness audit across the dimensions that break localization, each with status (🟢 ready / 🟡 partial / 🔴 blocker) and the fix:
| Dimension | Check | Status | Fix |
|---|---|---|---|
| String externalization | no user-facing text hard-coded; all in resource files / i18n keys | move strings to a catalog; no concatenated sentences | |
| Formatting | dates, numbers, currency, plurals via locale-aware libs (Intl/ICU) | use Intl/ICU; never string-format dates | |
| Pluralization | plural rules handled (not count + " items") | ICU plural categories (some langs have 4–6) | |
| Layout/expansion | UI tolerates ~+30–40% text length; no fixed-width truncation | flexible layouts, no text baked into images | |
| Encoding | UTF-8 throughout; CJK renders | UTF-8 end to end | |
