JavaScript (Vanilla)
Utilisez i1n dans n'importe quel projet JavaScript ou TypeScript sans framework.
Configuration
Installez i1n en tant que dépendance (npm install i1n) et exécutez i1n init pour configurer votre projet. L'interface de ligne de commande configure le format JSON imbriqué dans le répertoire locales/.
Le SDK i1n fonctionne dans n'importe quel environnement JavaScript ou TypeScript — Node.js, navigateur, Deno ou Bun. Aucune dépendance de framework ou d'outil de build n'est requise.
Utilisation
Importez init et t depuis i1n. Appelez init() avec votre locale et vos ressources de traduction, puis utilisez t() pour récupérer les chaînes traduites. Les variables sont interpolées avec la syntaxe {var}, {{var}} ou %{var}.
Utilisez setLocale() pour changer de langue à l'exécution. La pluralisation est prise en charge via les suffixes de clé _zero, _one et _other. Le fichier i1n.d.ts généré fournit une autocomplétion complète si vous utilisez TypeScript.
Mode pont
Si votre projet utilise déjà une fonction de traduction personnalisée ou un système de recherche, connectez-le avec registerI1n((key, params) => yourFunction(key, params)). Cela ajoute la complétion automatique type-safe d'i1n à toute configuration existante.
Le mode Bridge fonctionne avec toute fonction qui prend une clé et des paramètres optionnels et renvoie une chaîne de caractères. Cela rend i1n compatible avec toute solution i18n personnalisée, quel que soit le 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))