@edgeflowjs/i18n
v0.2.2
Published
Minimal internationalization for EdgeFlow kiosks. Supports multi-locale translation, param substitution, and React integration.
Readme
@edgeflowjs/i18n
Minimal internationalization for EdgeFlow kiosks. Supports multi-locale translation, param substitution, and React integration.
Install
pnpm add @edgeflowjs/i18nUsage
import { createI18n } from "@edgeflowjs/i18n";
import { I18nProvider, useT } from "@edgeflowjs/i18n/react";
const i18n = createI18n({
defaultLocale: "en",
translations: {
en: { "screen.ready": "Ready" },
fr: { "screen.ready": "Prêt" },
},
});
function App() {
return (
<I18nProvider i18n={i18n}>
<Screen />
</I18nProvider>
);
}
function Screen() {
const t = useT();
return <h1>{t("screen.ready")}</h1>;
}Features
- Flat or nested keys —
t("screen.idle.ready")or nested objects - Fallback — Missing keys fall back to default locale
- Param substitution —
t("greeting", { name: "User" })→"Hello, User!" - formatDate / formatNumber — Uses
Intlwith current locale - Offline — All translations bundled at build time
Documentation
- Guides: i18n — Setup, adding locales, React usage
- API: i18n — Full API reference
