← ClaudeAtlas

language-integratorlisted

Add or localize LenserFight for a new language or locale. Use when asked to add, implement, port, or support translations for feature-owned locale bundles in libs/features, the forum app runtime locale controller, docs, or language preference flows.
conectlens/lenserfight · ★ 7 · AI & Automation · score 71
Install: claude install-skill conectlens/lenserfight
# Language integrator Use this skill to add a locale in the LenserFight Nx monorepo without spreading language rules across unrelated files or putting i18n ownership in the app shell. ## Responsibility split - `libs/features/*/src/lib/i18n/*.ts` owns translation bundles for each feature. - `libs/features/settings` owns the language selector in the user settings flow. - `libs/features/onboarding` owns the initial preferred-language capture. - `libs/features/auth` owns preferred-language persistence and session data. - `apps/web/src/i18n.ts` composes feature locale exports and handles runtime language detection. - `apps/docs` is optional and only changes when docs localization is requested. Use the same locale code everywhere. Do not invent a second translation system. ## Add a locale 1. Choose the locale code, display name, and text direction. 2. Add or update the locale bundle in the owning feature library under `libs/features/<feature>/src/lib/i18n/` so the feature remains the information expert for its own copy. 3. Export the locale from the feature library root. 4. Compose the new locale in `apps/web/src/i18n.ts`. 5. Update onboarding, settings, and auth language surfaces so they use the same locale code. 6. Update docs locale config only if docs are part of the request. ## File map | File | Purpose | | --- | --- | | `libs/features/<feature>/src/lib/i18n/{LOCALE}.ts` | Feature locale bundle | | `libs/features/<feature>/src/index.ts` | Re-export feature l