Repolode
i18next

i18next/next-i18next

Kit de herramientas de traducción para apps de Next.js que integra i18next y react-i18next con App Router, Pages Router y middleware.

Estrellas
6,166
Forks
757
Issues abiertos
0
Último commit
hace 4 días

¿Qué es?

next-i18next es una capa sobre i18next y react-i18next que se encarga de los aspectos específicos de Next.js al traducir una app: la detección del idioma mediante proxy/middleware y las redirecciones por locale, la separación entre componentes de servidor y de cliente, y el envío de las traducciones cargadas del servidor al cliente.

Es compatible con App Router (Server Components, Client Components, proxy), con Pages Router mediante el punto de entrada next-i18next/pages y con configuraciones mixtas en las que ambos routers conviven en un proyecto. Los archivos de traducción pueden estar en public/locales o cargarse mediante imports dinámicos, una opción adecuada para despliegues serverless. El locale puede aparecer en la ruta URL, ocultarse para el idioma predeterminado o guardarse en una cookie con URLs limpias.

El soporte opcional incluye ICU MessageFormat y Unicode MessageFormat 2 mediante plugins. También se pueden integrar backends personalizados de i18next, como HTTP, Locize o backends encadenados con caché.

Funciones clave

  • 01Es compatible con App Router, Pages Router y proyectos con ambos routers en el mismo código base.
  • 02Detecta el idioma a partir de una cookie o de Accept-Language y redirige a rutas con el locale como prefijo.
  • 03Carga traducciones desde archivos públicos o mediante imports dinámicos compatibles con plataformas serverless.
  • 04Serializa los recursos cargados desde componentes de servidor a componentes de cliente.
  • 05Ofrece los formatos de mensaje ICU y MF2 mediante plugins opcionales.
  • 06Admite backends personalizados de i18next, como HTTP y Locize.

Casos de uso

  • Añadir compatibilidad con varios idiomas a un sitio existente de Next.js con App Router.
  • Mantener rutas localizadas y no localizadas en paralelo durante una migración desde Pages Router.
  • Desplegar una app de Next.js traducida en Vercel o en otros hosts serverless.
  • Cargar traducciones desde una CDN o un servicio de gestión de traducciones.

Inicio rápido

  1. 1

    Instala los paquetes

    npm install next-i18next i18next react-i18next
  2. 2

    Crea los archivos JSON de traducción y una configuración de i18n con un resourceLoader

  3. 3

    Añade proxy.ts, que exporte createProxy(i18nConfig)

  4. 4

    Configura el layout raíz con initServerI18next e I18nProvider

Antes de usarlo

  • En plataformas sin servidor, las traducciones deben cargarse con resourceLoader porque los archivos de public/ no están disponibles en tiempo de ejecución.
  • La recarga en caliente de las traducciones durante el desarrollo puede bloquearse con cargadores basados en import() y requiere una solución alternativa.
  • Con cacheComponents activado, next dev muestra advertencias de datos sin caché al leer traducciones desde archivos.

Temas

#i18n#nextjs#react#i18next#internationalization#ssr#typescript#next#now#react-i18next

Preguntas frecuentes

¿Qué es next-i18next?
Kit de herramientas de traducción para apps de Next.js que integra i18next y react-i18next con App Router, Pages Router y middleware. next-i18next es una capa sobre i18next y react-i18next que se encarga de los aspectos específicos de Next.js al traducir una app: la detección del idioma mediante proxy/middleware y las redirecciones por locale, la separación entre componentes de servidor y de cliente, y el envío de las traducciones cargadas del servidor al cliente.
¿next-i18next es gratuito? ¿Qué licencia tiene?
next-i18next es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿next-i18next sigue mantenido?
Mantenimiento activo. El último commit de next-i18next fue el 3 nov 2026.
¿Para qué puedo usar next-i18next?
Añadir compatibilidad con varios idiomas a un sitio existente de Next.js con App Router. Mantener rutas localizadas y no localizadas en paralelo durante una migración desde Pages Router. Desplegar una app de Next.js traducida en Vercel o en otros hosts serverless. Cargar traducciones desde una CDN o un servicio de gestión de traducciones.
¿Cómo se instala next-i18next?
Instala los paquetes: npm install next-i18next i18next react-i18next Crea los archivos JSON de traducción y una configuración de i18n con un resourceLoader Añade proxy.ts, que exporte createProxy(i18nConfig) Configura el layout raíz con initServerI18next e I18nProvider
¿Dónde consigo next-i18next?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/i18next/next-i18next

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados

Biblioteca de internacionalización (i18n) para Next.js, con sintaxis de mensajes ICU, fechas y números adaptados a la configuración regional, y hooks de traducción con seguridad de tipos.

4,4 mil+5 esta semana396TypeScriptMITBien mantenidoActualizado hace 23 horas