Guía rápida de React
Internacionaliza fácilmente tu app de React con gt-react
Pon a traducir tu app de React en minutos.
Requisitos previos: React, conocimientos básicos de JavaScript
Instalación
Instala los paquetes gt-react y gtx-cli:
npm i gt-react
npm i gtx-cliyarn add gt-react
yarn add --dev gtx-clibun add gt-react
bun add --dev gtx-clipnpm add gt-react
pnpm add --save-dev gtx-cliConfiguración rápida: Ejecuta npx gtx-cli@latest para configurar automáticamente. Consulta la guía del Asistente de configuración o usa nuestra integración de herramientas de IA.
Configuración
GTProvider
El componente GTProvider proporciona contexto de traducción a tus componentes de React. Gestiona el estado del locale, las traducciones y habilita los hooks useGT y useTranslations.
Añade GTProvider al componente raíz de tu App:
import { GTProvider } from 'gt-react';
export default function App() {
  return (
    <GTProvider>
      <YourAppContent />
    </GTProvider>
  );
}Crea un archivo gt.config.json en la raíz del proyecto:
{
  "defaultLocale": "en",
  "locales": ["fr", "es", "de"]
}Personaliza los locales de tu proyecto. Consulta los locales compatibles para ver las options.
Variables de entorno
Añade lo siguiente a tu archivo de entorno para la recarga en caliente durante el desarrollo:
VITE_GT_API_KEY="your-dev-api-key"
VITE_GT_PROJECT_ID="your-project-id"REACT_APP_GT_API_KEY="your-dev-api-key"
REACT_APP_GT_PROJECT_ID="your-project-id"GATSBY_GT_API_KEY="your-dev-api-key"
GATSBY_GT_PROJECT_ID="your-project-id"REDWOOD_ENV_GT_API_KEY="your-dev-api-key"
REDWOOD_ENV_GT_PROJECT_ID="your-project-id"Muchos frameworks de React tienen su propia forma de exportar variables de entorno al cliente.
En entornos de desarrollo, tanto GT_API_KEY como GT_PROJECT_ID deben exportarse al cliente.
Por ahora hemos añadido compatibilidad con algunas bibliotecas, pero avísanos si tu framework no aparece creando una incidencia en nuestro repositorio de GitHub.
Solo para desarrollo: no configures GT_API_KEY en producción; es únicamente para la recarga en caliente durante el desarrollo.
Obtén tus claves de API gratuitas en dash.generaltranslation.com o ejecuta:
npx gtx-cli authUso
Ahora puedes comenzar a internacionalizar tu contenido. Hay dos enfoques principales:
Contenido JSX con <T>
Envuelve elementos JSX para traducirlos con el componente <T>:
import { T } from 'gt-react';
function Welcome() {
  return (
    <T>
      <h1>¡Bienvenido a nuestra app!</h1>
    </T>
  );
}Para contenido dinámico, usa componentes de variables como <Var>:
import { T, Var } from 'gt-react';
function Greeting({ user }) {
  return (
    <T>
      <p>Hola, <Var>{user.name}</Var>!</p>
    </T>
  );
}Consulta la guía sobre el uso del componente <T> para obtener más información.
Cadenas simples con useGT
Para atributos, etiquetas y texto sin formato con el hook useGT:
import { useGT } from 'gt-react';
function ContactForm() {
  const t = useGT();
  
  return (
    <input 
      placeholder={t('Ingresa tu email')}
      aria-label={t('Campo de entrada de email')}
    />
  );
}Consulta la guía sobre traducción de cadenas para obtener más información.
Prueba de tu aplicación
Prueba tus traducciones cambiando el idioma:
- 
Agrega un menú desplegable para seleccionar el locale usando <LocaleSelector>:import { LocaleSelector } from 'gt-react'; function App() { return <LocaleSelector />; }
- 
Inicia el servidor de desarrollo: npm run devyarn run devbun run devpnpm run dev
- 
Visita localhost:3000 y cambia el idioma con el menú desplegable de selección de locale. 
En desarrollo, las traducciones se realizan bajo demanda (verás una breve carga). En producción, todo está pretraducido.
Solución de problemas
Implementación
Para producción, debes pretraducir el contenido porque la traducción en tiempo de ejecución está deshabilitada (excepto para los componentes/funciones <Tx> y tx).
- 
Obtén una clave de API de producción en dash.generaltranslation.com. Las claves de producción comienzan con gtx-api-(a diferencia de las claves de desarrollo, que empiezan congtx-dev-). Más información sobre las diferencias entre entornos.
- 
Agrega a tu entorno de CI/CD: GT_PROJECT_ID=your-project-id GT_API_KEY=gtx-api-your-production-keyNunca antepongas a las claves de producción el prefijo de variable pública de tu framework (como VITE_,REACT_APP_, etc.); deben permanecer solo en el servidor.
- 
Ejecuta el comando translate para traducir tu contenido: npx gtx-cli translatePuedes configurar el comportamiento del comando translate con el archivo gt.config.json.Consulta la guía de referencia de la herramienta CLI para más información. 
- 
Actualiza tu script de compilación para traducir antes de compilar: package.json { "scripts": { "build": "npx gtx-cli translate && <...YOUR_BUILD_COMMAND...>" } }
Próximos pasos
- Guía del componente <T>- Análisis en profundidad del componente<T>y la traducción con JSX
- Guía de traducción de cadenas - Uso de useGTpara traducir cadenas
- Componentes de variables - Gestiona contenido dinámico con <Var>,<Num>, etc.
¿Qué te ha parecido esta guía?

