# gt-next: General Translation Next.js SDK: Compilador
URL: https://generaltranslation.com/es/docs/next/concepts/compiler.mdx
---
title: Compilador
description: plugin de SWC de gt-next basado en Rust
---
gt-next incluye un plugin de SWC basado en Rust que realiza un análisis en tiempo de compilación para detectar errores habituales de traducción y optimizar el rendimiento.
## Funcionalidades
### Detección de contenido dinámico
Detecta contenido dinámico sin envolver en componentes de traducción:
```jsx
// ❌ Inválido - contenido dinámico no envuelto
Hello {userName}
// ✅ Válido - contenido dinámico envuelto en componente de variable
Hello {userName}
```
### Validación de llamadas a funciones
Detecta argumentos no literales pasados a las funciones de traducción:
```jsx
const gt = useGT();
// ❌ Inválido - plantillas literales 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 tiempo de ejecución:
```jsx
// Entrada
Hello world
// Salida (cuando está habilitado)
Hello world
```
## Configuración
Configura el plugin de 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 hashes
},
});
```
### Opciones
* **`logLevel`**: Controla el nivel de las advertencias que se muestran
* `'silent'` - No muestra advertencias (predeterminado en producción)
* `'error'` - Las muestra como errores de compilación
* `'warn'` - Las muestra como advertencias (predeterminado en desarrollo)
* `'info'` - Muestra mensajes informativos
* `'debug'` - Muestra 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 en tiempo de compilación para mejorar el rendimiento
## Limitaciones
El plugin de SWC procesa los archivos de forma individual y no puede detectar incumplimientos en los componentes reexportados:
```jsx
// Archivo A: export { T as Translate } from 'gt-next'
// Archivo B: import { Translate } from './A'
Hello {name} // No será detectado
```