JavaScript (Vanilla)
Utilice i1n en cualquier proyecto de JavaScript o TypeScript sin un framework.
Configuración
Instala i1n como dependencia (__VAR_1__ npm install i1n) y ejecuta __VAR_2__ i1n init para configurar tu proyecto. La CLI configura el formato JSON anidado en el directorio locales/.
El SDK de i1n funciona en cualquier entorno JavaScript o TypeScript: Node.js, navegador, Deno o Bun. No se requieren dependencias de frameworks ni de herramientas de compilación.
Uso
Importa init y t de i1n. Llama a init() con tu locale y recursos de traducción, luego usa t() para obtener las cadenas traducidas. Las variables se interpolan con la sintaxis {var}, {{var}} o %{var}.
Utilice setLocale() para cambiar de idioma en tiempo de ejecución. La pluralización se admite a través de los sufijos de clave _zero, _one y _other. El archivo i1n.d.ts generado proporciona autocompletado completo si utiliza TypeScript.
Modo Puente
Si tu proyecto ya utiliza una función de traducción personalizada o un sistema de búsqueda, conéctalo con registerI1n((key, params) => yourFunction(key, params)). Esto agrega el autocompletado de tipo seguro de i1n a cualquier configuración existente.
El Modo Puente funciona con cualquier función que reciba una clave y parámetros opcionales y devuelva una cadena. Esto hace que i1n sea compatible con cualquier solución i18n personalizada, independientemente del framework.
import { init, t } from 'i1n'
init({
locale: 'en_us',
resources: {
en_us: { greeting: 'Hello {name}' },
es_es: { greeting: 'Hola {name}' }
}
})
t('greeting', { name: 'World' }) // "Hello World" import { registerI1n } from 'i1n'
// Connect any custom translation function
registerI1n((key, params) => myCustomLookup(key, params))