# 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
```