# gt-node: General Translation Node.js SDK: Inicio rápido URL: https://generaltranslation.com/es/docs/node/quickstart.mdx --- title: Inicio rápido description: Instala la biblioteca `gt-node` de General Translation y traduce tu primer servicio de Node.js. related: links: - /docs/node/guides/translating-strings - /docs/node/guides/detecting-locale - /docs/node/guides/configuring - /docs/node/guides/storing-translations --- `gt-node` traduce cadenas en servidores y servicios de Node.js. Lo inicializas una sola vez, asocias la configuración regional a cada solicitud entrante y traduces cadenas en tus manejadores de solicitud. Usa `gt-node` para servicios de backend, como APIs de Express o Fastify. Para aplicaciones de React, usa [`gt-react`](/docs/react/react-quickstart); para Next.js, usa [`gt-next`](/docs/react/nextjs-quickstart). *Nota: `gt-node` requiere Node.js 18 o posterior. La asociación de la configuración regional por solicitud usa `AsyncLocalStorage` de `node:async_hooks`.* ## Lo que hace gt-node [#what-it-does] `gt-node` te ofrece: * **traducción de cadenas** con [`getGT`](/docs/node/reference/functions/get-gt), para cadenas locales del manejador de solicitud. * **Mensajes registrados** con [`msg`](/docs/node/reference/functions/msg) y [`getMessages`](/docs/node/reference/functions/get-messages), para constantes compartidas y errores. * **Traducción en tiempo de ejecución** con [`tx`](/docs/node/reference/functions/tx), para contenido dinámico. * Asociación de **configuración regional por solicitud** con [`withGT`](/docs/node/reference/functions/with-gt), además de utilidades para detectar la configuración regional de la solicitud. ## Inicio rápido [#quickstart] Instala la biblioteca, inicialízala, asocia una configuración regional a cada solicitud y traduce una cadena. ### 1. Instala `gt-node` Instala `gt-node` y Express como dependencias y la [CLI de `gt`](/docs/cli/quickstart) como dependencia de desarrollo. ```bash npm install gt-node express && npm install gt --save-dev ``` ```bash yarn add gt-node express && yarn add --dev gt ``` ```bash bun add gt-node express && bun add --dev gt ``` ```bash pnpm add gt-node express && pnpm add --save-dev gt ``` *Nota: El código del servidor a continuación usa la sintaxis `import` de módulos ES. Configura `"type": "module"` en tu `package.json` para que Node.js pueda ejecutarlo.* ### 2. Inicializa la biblioteca Llama a [`initializeGT`](/docs/node/reference/functions/initialize-gt) una sola vez al inicio, antes de procesar solicitudes. Pasa tus locales directamente. Cuando se omiten los campos de credenciales, `gt-node` lee `GT_PROJECT_ID`, `GT_API_KEY` y `GT_DEV_API_KEY` del entorno. ```ts title="server.js" import { initializeGT } from 'gt-node'; initializeGT({ defaultLocale: 'en', locales: ['en', 'es', 'fr'], }); ``` ### 3. Asocia la configuración regional de la solicitud Envuelve cada solicitud con [`withGT`](/docs/node/reference/functions/with-gt) para que las funciones de traducción sepan cuál es la configuración regional de destino. Usa [`getRequestLocale`](/docs/node/reference/functions/get-request-locale) para detectarla a partir de la cabecera `Accept-Language`. ```js title="server.js" import express from 'express'; import { withGT, getRequestLocale } from 'gt-node'; const app = express(); app.use((req, res, next) => withGT(getRequestLocale(req), () => next())); ``` ### 4. Traduce una cadena Dentro de un manejador de solicitud, usa [`getGT`](/docs/node/reference/functions/get-gt) para obtener una función de traducción para la configuración regional de la solicitud y luego traduce cadenas. Interpola valores con marcadores de posición de ICU. ```js title="server.js" import { getGT } from 'gt-node'; app.get('/api/greeting', async (req, res) => { const gt = await getGT(); res.json({ message: gt('Hello, {name}!', { name: 'Alice' }) }); }); app.listen(3000, () => console.log('Listening on http://localhost:3000')); ``` ### 5. Ejecuta y verifica Combina los fragmentos de los pasos 2–4 en un único archivo `server.js` y luego inicia el servidor. Antes de generar traducciones, el manejador de solicitud devuelve tu cadena fuente, lo que confirma que el servicio está configurado correctamente. ```bash node server.js ``` En otra terminal, envía una solicitud: ```bash curl http://localhost:3000/api/greeting ``` ```json title="Output" {"message":"Hello, Alice!"} ``` ### 6. Genera traducciones Ejecuta la CLI antes de desplegar en producción para que las traducciones estén disponibles en tiempo de ejecución. ```bash npx gt translate ``` *Nota: [`gt translate`](/docs/cli/reference/commands/translate) lee un `gt.config.json` y requiere un Project ID y una API key. Ejecuta primero [`npx gt init`](/docs/cli/reference/commands/init) para crearlos.* Consulta [Traducir cadenas](/docs/node/guides/translating-strings) para saber cuándo usar [`getGT`](/docs/node/reference/functions/get-gt), [`msg`](/docs/node/reference/functions/msg) y [`tx`](/docs/node/reference/functions/tx), y [Configurar gt-node](/docs/node/guides/configuring) para obtener información sobre las credenciales y la entrega. ## Next steps - /docs/node/guides/translating-strings - /docs/node/guides/detecting-locale - /docs/node/guides/configuring - /docs/node/guides/storing-translations