Documentación

Magic Translate vs. i18next

i18next, con sus enlaces React react-i18next, es la biblioteca i18n de código abierto más popular para JavaScript. Se basa en claves de traducción y archivos de idiomas. Magic Translate traduce el texto de tus componentes directamente, sin claves ni archivos. En esta página se explica la diferencia para que puedas elegir la herramienta adecuada para tu aplicación.

De un vistazo

Magic Translatei18next
Cómo escribes el textoTus propias palabras, envueltas en <T>Una clave por texto, como t('cart.title')
TraduccionesTraducción automática, creada automáticamenteTú o tus traductores los escribís
Archivos de idiomasNingunaUn archivo por idioma y espacio de nombres
Nuevos idiomasCambiar la configuración de languageTraduce todas las claves al nuevo idioma
Procesamiento de servidoresComponentes del servidor React y Next.jsSí, con configuración adicional
Plurales y formatoTraducido como parte de la fraseIntegrado, con reglas en plural por idioma
PrecioPlan gratuito, luego planes mensuales según el usoDe código abierto y gratis

En qué se diferencia el código

Con react-i18next, guardas un archivo de idiomas para cada idioma y consultas los textos por clave:

// locales/en/translation.json
{ "cart": { "title": "Your shopping cart" } }
// Cart.tsx
import { useTranslation } from 'react-i18next';
const Cart = () => {
const { t } = useTranslation();
return <h2>{t('cart.title')}</h2>;
};

Con Magic Translate, el texto permanece en el componente:

import { T } from '@magic-translate/react';
const Cart = () => (
<h2>
<T>Your shopping cart</T>
</h2>
);

Cuándo elegir Magic Translate

  • Quieres que tu aplicación esté en muchos idiomas sin gestionar los archivos de idiomas.
  • No tienes traductores o no quieres esperar a que lleguen antes de publicar una nueva versión.
  • Tus textos cambian a menudo y quieres que todos los idiomas estén actualizados.
  • Usas React Server Components o Next.js y quieres que el HTML esté completamente traducido para los motores de búsqueda.

Cuándo elegir i18next

  • Todos los textos deben ser traducidos o revisados por una persona.
  • Necesitas un control exacto sobre las formas plurales, las fechas y los números en cada idioma.
  • Quieres una biblioteca gratuita y de código abierto sin servicio externo.

Pasar del i18next al Magic Translate

Puedes cambiar un componente a la vez. Sustituye t('key') por el texto en inglés de tu archivo de idiomas, envuelto en <T>, o utiliza useT hook para props y atributos. Ambas bibliotecas pueden funcionar una al lado de la otra durante la migración.

¿Estás listo para probarlo? Sigue la guía de inicio para traducir tu primer componente en cinco minutos.