# gt-next: General Translation Next.js SDK: Compilador URL: https://generaltranslation.com/es/docs/next/concepts/compiler.mdx --- title: Compilador description: Plugin SWC de gt-next basado en Rust --- gt-next incluye un plugin SWC basado en Rust que realiza análisis en tiempo de compilación para detectar errores de traducción habituales y optimizar el rendimiento. ## Características ### Detección de contenido dinámico Detecta contenido dinámico no encapsulado en componentes de traducción: ```jsx // ❌ Inválido - contenido dinámico sin envolver Hello {userName} // ✅ Válido - contenido dinámico envuelto en un componente variable Hello {userName} ``` ### Validación de llamadas a funciones Detecta argumentos no literales que se pasan a las funciones de traducción: ```jsx const gt = useGT(); // ❌ Inválido - literales de plantilla y concatenación gt(`Hello ${name}`) gt("Hello " + name) // ✅ Válido - cadenas literales con sustitución de variables gt("Hello, {name}!", { name }) ``` ### Generación de hashes en tiempo de compilación Precalcula los hashes de traducción para mejorar el rendimiento en runtime: ```jsx // Entrada Hello world // Salida (cuando está habilitado) Hello world ``` ## Configuración Configura el plugin SWC en tu `next.config.js`: ```javascript import { withGTConfig } from 'gt-next/config'; export default withGTConfig(nextConfig, { locales: ['en', 'es'], swcPluginOptions: { logLevel: 'silent', // Controlar la salida de advertencias compileTimeHash: false, // Habilitar la generación de hash }, }); ``` ### Opciones * **`logLevel`**: Controla el nivel de las advertencias que se muestran * `'silent'` - Sin advertencias (predeterminado en producción) * `'error'` - Mostrar como errores de compilación * `'warn'` - Mostrar como advertencias (predeterminado en desarrollo) * `'info'` - Mostrar mensajes informativos * `'debug'` - Mostrar toda la información de depuración * **`compileTimeHash`**: Habilita la generación de hashes en tiempo de compilación * `false` - Deshabilitado (predeterminado) * `true` - Genera hashes durante la compilación para mejorar el rendimiento ## Limitaciones El plugin SWC procesa los archivos individualmente y no puede detectar incumplimientos en componentes reexportados: ```jsx // Archivo A: export { T as Translate } from 'gt-next' // Archivo B: import { Translate } from './A' Hello {name} // No será detectado ```