Cas d’usage
Site statique multilingue
Vous construisez avec Astro, vous voulez dix langues, et vous ne voulez pas d’un kilo de JavaScript pour les servir.
Le problème
- Les solutions i18n côté client ajoutent du poids et un scintillement au premier rendu.
- Garder dix arborescences de fichiers en phase à la main devient un métier.
- Chaque correction de texte relance une build et un déploiement complets.
Ce que Sonenta change
@sonenta/astrorécupère les bundles au build et les inline dans le HTML statique. Zéro JavaScript client.- Un module virtuel
sonenta:i18nexpose les catalogues, avec repli sur la langue source. - Les variantes par écran arrivent en surcouche du CDN, sans deuxième arborescence à maintenir.
Cette page en est la preuve : sonenta.com tourne dessus, en 13 langues. Le texte que vous lisez a été récupéré du CDN au moment du build.
Le point de départ
// 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"; Limites connues
- Les bundles sont figés au build. Publier une traduction après coup demande une nouvelle build du site statique, contrairement à une app qui charge à l’exécution.
- Les sous-ensembles de polices et les réglages par écriture restent à votre charge, Sonenta livre le texte, pas la typographie.
Pour aller plus loin
Jusqu'au dernier mot.
Prêt à adapter votre produit à chaque utilisateur ?
Commencez gratuitement en quelques minutes. Sans carte de crédit, sans engagement, avec vos exports toujours ouverts.