i18n-expert

3
0
Source

This skill should be used when setting up, auditing, or enforcing internationalization/localization in UI codebases (React/TS, i18next or similar, JSON locales), including installing/configuring the i18n framework, replacing hard-coded strings, ensuring en-US/zh-CN coverage, mapping error codes to localized messages, and validating key parity, pluralization, and formatting.

Install

mkdir -p .claude/skills/i18n-expert && curl -L -o skill.zip "https://mcp.directory/api/skills/download/3899" && unzip -o skill.zip -d .claude/skills/i18n-expert && rm skill.zip

Installs to .claude/skills/i18n-expert

About this skill

I18n Expert

Overview

Deliver a complete i18n setup + audit pass: configure the i18n framework, replace user-facing strings with keys, ensure locale parity, and validate pluralization/formatting for en-US and zh-CN.

Core Capabilities

  • Library selection and setup (React, Next.js, Vue).
  • Key architecture and locale file organization.
  • Translation generation and quality strategy (AI, professional, manual).
  • Routing and language detection/switching.
  • SEO and metadata localization (when applicable).
  • RTL support (only if RTL locales are in scope).

Scope Inputs (ask if unclear)

  • Framework and routing style.
  • Existing i18n state (none, partial, legacy).
  • Target locales (default: en-US + zh-CN).
  • Translation quality needs (AI vs professional vs manual).
  • Locale formats in use (JSON, YAML, PO, XLIFF).
  • Formality/cultural requirements (if any).

Workflow (Audit -> Fix -> Validate)

  1. Confirm scope and locale targets
  • Identify the i18n framework and locale locations.
  • Confirm locales; default to en-US + zh-CN when specified.
  1. Setup i18n baseline (if missing)
  • Choose a framework-appropriate library (e.g., React: react-i18next; Next.js: next-intl; Vue: vue-i18n).
  • Install packages and create the i18n entry/config file.
  • Wire the provider at the app root and load locale resources.
  • Add a language switcher and persistence (route/param/localStorage) as appropriate.
  • Establish locale file layout and key namespaces.
  • If routing is locale-aware, define the locale segment strategy early (subpath, subdomain, query param).
  • If metadata is user-facing, include translation for titles/descriptions.
  1. Audit key usage and locale parity
  • Run:
    python scripts/i18n_audit.py --src <src-root> --locale <path/to/en-US.json> --locale <path/to/zh-CN.json>
    
  • Treat missing keys/parity gaps as blockers.
  • Manually verify dynamic keys (t(var)).
  1. Find raw user-facing strings
  • Search:
    rg -n --glob '<src>/**/*.{ts,tsx,js,jsx}' "<[^>]+>[^<{]*[A-Za-z][^<{]*<"
    rg -n --glob '<src>/**/*.{ts,tsx,js,jsx}' "aria-label=\"[^\"]+\"|title=\"[^\"]+\"|placeholder=\"[^\"]+\""
    
  • Localize accessibility labels.
  1. Replace strings with keys
  • Use t('namespace.key') for UI text.
  • For plurals use t('key', { count }) + _one/_other keys.
  • Use Intl/app formatters for time/date/number.
  1. Localize error handling (critical)
  • Map error codes to localized keys; show localized UI only.
  • Log raw error details only.
  • Provide localized fallback for unknown codes.
  1. Update locale files
  • Add missing keys in both locales.
  • Keep placeholders consistent; avoid renames unless requested.
  • Generate translations using the agreed method; preserve placeholders and plural rules.
  1. Validate
  • Re-run the audit until missing/parity issues are zero.
  • Validate JSON (e.g., python -m json.tool <file>).
  • Update tests asserting visible text.

Guardrails

  • Never expose raw error.message to UI; show localized strings only.
  • Do not add extra locales unless explicitly requested.
  • Prefer structured namespaces (e.g., errors.*, buttons.*, workspace.*).
  • Keep translations concise and consistent.
  • Some technical/brand terms should remain untranslated (e.g., product name, API, MCP, Bash).

Deliverables (expected outputs)

  • i18n config/provider wiring.
  • Locale files for each target language.
  • Replaced UI strings with stable keys.
  • Language switcher and persistence (if applicable).
  • Updated tests for visible text.

Architecture Guidance (keep concise)

  • Key structure: prefer nested namespaces by area (e.g., common.buttons.save, pricing.tier.pro).
  • File layout: one file per locale or per-locale namespaces; keep keys in sync across locales.
  • Placeholders: preserve {name}/{{name}} exactly; validate plurals by locale rules.
  • Formatting: use Intl/app helpers for date, time, number, and list formatting.
  • SEO/metadata: localize titles and descriptions if the app exposes them.
  • RTL: only needed for RTL locales; use logical CSS properties and test layout.
  • Non-web surfaces (Electron main-process dialogs, CLI prompts, native menus) need localization too.

Performance Notes (short)

  • Lazy-load locale bundles when the app supports it.
  • Split large locale files by namespace.

Failure Modes (watchlist)

  • Missing translations: fall back to default locale and log warnings.
  • RTL layout issues: verify logical CSS and test pages.
  • SEO missing: ensure alternates and metadata are localized when applicable.

Validation Checklist (short)

  • No missing keys and no raw UI strings.
  • Locale switching works and persists.
  • Plurals and formatting verified in both locales.
  • Fallback locale configured.

Resources

scripts/

  • scripts/i18n_audit.py: Extracts t('key') usage and compares against locale JSON files.

macos-cleaner

daymade

Analyze and reclaim macOS disk space through intelligent cleanup recommendations. This skill should be used when users report disk space issues, need to clean up their Mac, or want to understand what's consuming storage. Focus on safe, interactive analysis with user confirmation before any deletions.

229

ppt-creator

daymade

Create professional slide decks from topics or documents. Generates structured content with data-driven charts, speaker notes, and complete PPTX files. Applies persuasive storytelling principles (Pyramid Principle, assertion-evidence). Supports multiple formats (Marp, PowerPoint). Use for presentations, pitches, slide decks, or keynotes.

235

claude-skills-troubleshooting

daymade

Diagnose and resolve Claude Code plugin and skill issues. This skill should be used when plugins are installed but not showing in available skills list, skills are not activating as expected, or when troubleshooting enabledPlugins configuration in settings.json. Triggers include "plugin not working", "skill not showing", "installed but disabled", or "enabledPlugins" issues.

91

twitter-reader

daymade

Fetch Twitter/X post content by URL using jina.ai API to bypass JavaScript restrictions. Use when Claude needs to retrieve tweet content including author, timestamp, post text, images, and thread replies. Supports individual posts or batch fetching from x.com or twitter.com URLs.

321

llm-icon-finder

daymade

Finding and accessing AI/LLM model brand icons from lobe-icons library. Use when users need icon URLs, want to download brand logos for AI models/providers/applications (Claude, GPT, Gemini, etc.), or request icons in SVG/PNG/WEBP formats.

00

pdf-creator

daymade

Create PDF documents from markdown with proper Chinese font support using weasyprint. This skill should be used when converting markdown to PDF, generating formal documents (legal, trademark filings, reports), or when Chinese typography is required. Triggers include "convert to PDF", "generate PDF", "markdown to PDF", or any request for creating printable documents.

00

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

641968

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

590705

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

338397

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

318395

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

450339

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

304231

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.