Installs into .claude/skills of the current project.
Are you the author of I18n?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/d-kimuson-i18n)
---
name: i18n
description: "Use when updating Lingui catalogs or fixing translations"
disable-model-invocation: false
user-invocable: true
---
## Core rules
- English (`en`) is the source catalog. Do not alter keys; only update translations.
- Preserve placeholders and ICU syntax exactly (e.g., `{name}`, `{count, plural, one {...} other {...}}`).
- Keep technical terms in English when appropriate (API, TypeScript, React).
## Translation updates
- Update `src/lib/i18n/locales/{locale}/messages.json` only; do not edit compiled outputs by hand.
- Use `./scripts/put-transtation.js` to safely update a specific entry without loading the full file into context.
## Verification
- Run `pnpm lingui:extract` when new messages are added.
- Run `pnpm lingui:compile` to regenerate compiled catalogs.
- Run `scripts/lingui-check.sh` to verify no missing translations.
- Run `scripts/i18n-check-key-equals-translation.sh` to ensure key != translation in all locales.