Internacionalización para el TypeScript moderno
Cero dependencias · Seguridad de tipos · Agnóstico del framework
export default {
dashboard: {
greeting: "¡Hola, {name: string}!",
membership: "{role, select, admin {Administrador} pro {Miembro Pro} other {Miembro Estándar}}",
cart: "{count, plural, =0 {El carrito está vacío} one {# artículo en el carrito} other {# artículos en el carrito}}",
discount: "Venta flash: <badge>20% de descuento</badge> en todos los artículos",
invoice: "Total: {amount, number, currency}",
delivery: "Entrega estimada: {time}",
},
} as const;¡Hola, Alex!
Miembro ProSeguridad de tipos
Proporciona inferencia de tipos TypeScript para claves de traducción, espacios de nombres y parámetros, validando la coherencia del esquema entre idiomas.
Cero dependencias en tiempo de ejecución
Construido sobre TypeScript y las API estándar Web Intl, sin requerir pasos de generación de código ni compilación adicional. Minified + Gzipped: < 5 kB
Soporte para ICU Message Format
Admite plurales, ordinales, ramas condicionales (select) e interpolación de etiquetas de texto enriquecido sin analizadores externos.
Agnóstico del framework
Funciona en Astro, Next.js, React, Vue, Svelte, Node.js, Bun y Cloudflare Workers.
Benchmark del tamaño de transferencia de red
Mide el tamaño real de transferencia en red de todos los recursos de i18n durante el pre-renderizado inicial y la hidratación en el cliente.
Playwright Headless Chromium · Real HTTP Transfer Size
i18next incluye motores de análisis completos y entornos de ejecución de plugins, lo que genera una sobrecarga base fija. ts-intl tiene cero dependencias en tiempo de ejecución (~2 KB en el núcleo) y, en modo de división por idioma, solo descarga el diccionario del idioma activo.
Paraglide compila cada mensaje en funciones JS y elimina mediante tree-shaking las claves no utilizadas. ts-intl es una biblioteca ligera en tiempo de ejecución que no requiere generación de código, empleando imports dinámicos estándar para evitar la acumulación de múltiples idiomas en el bundle.