Caso de uso
Sitio estático multilingüe
Construyes con Astro, quieres diez idiomas, y no quieres un runtime pesado para servirlos.
El problema
- La i18n en el cliente añade peso y un parpadeo en el primer pintado.
- Mantener diez árboles de ficheros sincronizados a mano se convierte en un oficio.
- Cada corrección de texto dispara una reconstrucción y un despliegue completos.
Lo que cambia Sonenta
@sonenta/astrorecupera los bundles en el build y los incrusta en el HTML estático. Cero JavaScript de cliente.- Un módulo virtual
sonenta:i18nexpone los catálogos, con respaldo al idioma de origen. - Las variantes por pantalla llegan como capa del CDN, sin un segundo árbol que mantener.
Esta página es la prueba: sonenta.com corre sobre ello, en 13 idiomas. El texto que lees se recuperó del CDN en el momento del build.
Por dónde empezar
// astro.config.mjs
import sonenta from "@sonenta/astro";
export default defineConfig({
integrations: [
sonenta({ project: "proj_xxx", version: "main",
locales: ["fr","en","es"], defaultLocale: "fr" }),
],
});
// dans un composant : zéro JavaScript client
import { getT } from "sonenta:i18n"; Límites conocidos
- Los bundles quedan congelados en el build. Publicar una traducción después exige una nueva construcción del sitio estático, al contrario que una app que carga en tiempo de ejecución.
- Los subconjuntos de fuentes y los ajustes por escritura siguen siendo cosa tuya. Sonenta entrega el texto, no la tipografía.
Para seguir
Hasta la última palabra.
¿Listo para adaptar tu producto a cada usuario?
Empieza gratis en unos minutos. Sin tarjeta de crédito, sin compromiso, y con tus exportaciones siempre abiertas.