express-intlayer: Pacchetto JavaScript per internazionalizzare (i18n) un'applicazione Express.js
Intlayer è una suite di pacchetti progettata specificamente per sviluppatori JavaScript. È compatibile con framework come React, Next.js ed Express.js.
Il pacchetto express-intlayer consente di internazionalizzare la tua applicazione Express.js. Fornisce un middleware per rilevare la lingua preferita dell'utente e restituisce il dizionario appropriato per l'utente.
Perché internazionalizzare il tuo backend?
Internazionalizzare il tuo backend è essenziale per servire efficacemente un pubblico globale. Permette alla tua applicazione di fornire contenuti e messaggi nella lingua preferita di ogni utente. Questa capacità migliora l'esperienza utente e amplia la portata della tua applicazione rendendola più accessibile e rilevante per persone di diversi background linguistici.
Casi d'uso pratici
Visualizzare errori del backend nella lingua dell'utente: Quando si verifica un errore, visualizzare i messaggi nella lingua madre dell'utente migliora la comprensione e riduce la frustrazione. Questo è particolarmente utile per messaggi di errore dinamici che potrebbero essere mostrati in componenti front-end come toast o modali.
Recuperare contenuti multilingue: Per applicazioni che estraggono contenuti da un database, l'internazionalizzazione garantisce che tu possa fornire questi contenuti in più lingue. Questo è cruciale per piattaforme come siti di e-commerce o sistemi di gestione dei contenuti che devono mostrare descrizioni di prodotti, articoli e altri contenuti nella lingua preferita dall'utente.
Inviare email multilingue: Che si tratti di email transazionali, campagne di marketing o notifiche, inviare email nella lingua del destinatario può aumentare significativamente il coinvolgimento e l'efficacia.
Notifiche push multilingue: Per applicazioni mobili, inviare notifiche push nella lingua preferita dell'utente può migliorare l'interazione e la fidelizzazione. Questo tocco personale può rendere le notifiche più rilevanti e utili.
Altre comunicazioni: Qualsiasi forma di comunicazione dal backend, come messaggi SMS, avvisi di sistema o aggiornamenti dell'interfaccia utente, beneficia dell'essere nella lingua dell'utente, garantendo chiarezza e migliorando l'esperienza utente complessiva.
Internazionalizzando il backend, la tua applicazione non solo rispetta le differenze culturali, ma si allinea meglio con le esigenze del mercato globale, rendendolo un passaggio chiave per scalare i tuoi servizi a livello mondiale.
Perché integrare Intlayer?
- Ambiente Type-Safe: Sfrutta TypeScript per garantire che tutte le definizioni dei tuoi contenuti siano precise e prive di errori.
Installazione
Installa il pacchetto necessario utilizzando il tuo gestore di pacchetti preferito:
npm install express-intlayer
yarn add express-intlayer
pnpm add express-intlayer
Configura Intlayer
Intlayer fornisce un file di configurazione per impostare il tuo progetto. Posiziona questo file nella radice del tuo progetto.
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { internationalization: { locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], defaultLocale: Locales.ENGLISH, },};export default config;
Per un elenco completo dei parametri disponibili, consulta la documentazione di configurazione.
Esempio di utilizzo
Configura la tua applicazione Express per utilizzare express-intlayer:
import express, { type Express } from "express";import { intlayer, t } from "express-intlayer";const app: Express = express();// Carica il gestore delle richieste di internazionalizzazioneapp.use(intlayer());// Rotteapp.get("/", (_req, res) => { res.send( t({ en: "Example of returned content in English", fr: "Exemple de contenu renvoyé en français", "es-ES": "Ejemplo de contenido devuelto en español (España)", "es-MX": "Ejemplo de contenido devuelto en español (México)", }) );});// Avvia il serverapp.listen(3000, () => console.log(`Listening on port 3000`));
Compatibilità
express-intlayer è completamente compatibile con:
- react-intlayer per applicazioni React
- next-intlayer per applicazioni Next.js
- vite-intlayer per applicazioni Vite
Funziona anche perfettamente con qualsiasi soluzione di internazionalizzazione in vari ambienti, inclusi browser e richieste API. Puoi personalizzare il middleware per rilevare la lingua tramite header o cookie:
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { // ... Altre opzioni di configurazione middleware: { headerName: "my-locale-header", cookieName: "my-locale-cookie", },};export default config;
Per impostazione predefinita, express-intlayer interpreterà l'header Accept-Language per determinare la lingua preferita del client.
Funzioni fornite dal pacchetto express-intlayer
Se hai un’idea per migliorare questa documentazione, non esitare a contribuire inviando una pull request su GitHub.
Collegamento GitHub alla documentazione