i18n côté serveur pour Hono, Express et l'edge
Internationalisez votre API et vos applications rendues côté serveur. Better I18N fournit un middleware pour Hono, Express, Fastify et les runtimes edge, avec détection automatique de la langue.
Set up in 3 steps
Install the package
Installez @better-i18n/server. Installez éventuellement Hono ou Express selon votre framework.
npm install @better-i18n/server
# Hono: npm install hono
# Express: npm install expressCreate a singleton
Instanciez createServerI18n() une seule fois au niveau du module. Le TtlCache est partagé entre toutes les requêtes, donc aucun appel au CDN par requête.
import { createServerI18n } from '@better-i18n/server';
export const i18n = createServerI18n({
projectId: 'your-org/your-api',
defaultLocale: 'en',
});Register middleware
Branchez le middleware de votre framework. Le middleware lit Accept-Language, résout la langue et injecte t() dans le contexte de la requête.
Framework middleware
Choisissez votre framework serveur — l'API du middleware est la même sur Hono et sur les adaptateurs Node.js.
import { Hono } from 'hono';
import { betterI18n } from '@better-i18n/server/hono';
import { i18n } from './i18n';
type Variables = { locale: string; t: Translator };
const app = new Hono<{ Variables: Variables }>();
app.use('*', betterI18n(i18n));
app.get('/api/users/:id', (c) => {
const t = c.get('t');
return c.json({ error: t('errors.notFound') }, 404);
});Pourquoi utiliser Better I18N côté serveur ?
Other frameworks
Get started
Localisez dès aujourd'hui les réponses de votre API
Servez des messages d'erreur, des notifications et du contenu traduits depuis votre backend, sans surcoût.