i18n

SylphxAI's avatarfrom SylphxAI

Internationalization - localization, translations. Use when adding languages.

4stars🔀3forks📁View on GitHub🕐Updated Jan 8, 2026

When & Why to Use This Skill

This Claude skill provides a comprehensive framework for implementing internationalization (i18n) and localization in Next.js applications using next-intl. It automates the management of translation bundles, enforces strict architectural standards for namespace splitting, and optimizes SEO through intelligent routing and server-side rendering strategies to ensure a native user experience across all markets.

Use Cases

  • Case 1: Seamlessly adding new language support to a Next.js project while adhering to next-intl best practices and Turbopack compatibility.
  • Case 2: Refactoring hardcoded UI strings into localized, namespace-split translation files to improve code maintainability and reduce client-side bundle sizes.
  • Case 3: Configuring SEO-optimized URL structures by implementing permanent redirects and removing unnecessary language prefixes for default locales.
  • Case 4: Ensuring application performance and security by preventing server-only translation keys from being exposed in client-side bundles.
namei18n
descriptionInternationalization - localization, translations. Use when adding languages.

i18n Guideline

Tech Stack

  • i18n: next-intl
  • Framework: Next.js (with Turbopack)

Non-Negotiables

  • All i18n via next-intl (no custom implementation)
  • /en/* must not exist (permanently redirect to non-prefixed)
  • Missing translation keys must fail build
  • No hardcoded user-facing strings outside localization
  • Translation bundles must be split by namespace (no monolithic files)
  • Server Components for translations wherever possible
  • Client bundles must not include server-only translations

Context

Internationalization isn't just translation — it's making the product feel native to each market. Bad i18n signals users are second-class citizens. Good i18n is invisible.

next-intl is the SSOT for i18n. No custom implementations.

Driving Questions

  • Is next-intl handling all translations?
  • Are bundles split by namespace?
  • What would make the product feel native to non-English users?
  • Where do translations feel awkward?
  • How large are client-side translation bundles?