Auteur:
    Création:2026-01-21Dernière mise à jour:2026-01-21

    Package next-intlayer

    Le package next-intlayer fournit les outils nécessaires pour intégrer Intlayer dans des applications Next.js. Il prend en charge à la fois l'App Router et le Page Router, y compris le middleware pour le routage basé sur la locale.

    Installation

    bash
    npm install next-intlayer
    

    Exportations

    Middleware

    Importer :

    tsx
    import "next-intlayer/middleware";
    
    FonctionDescriptionDocumentation associée
    intlayerMiddlewareMiddleware Next.js pour gérer le routage et les redirections basés sur la locale. Détecte la locale à partir des en-têtes/cookies et redirige vers le chemin approprié pour la locale.intlayerMiddleware

    Helpers de configuration

    Import:

    tsx
    import "next-intlayer/server";
    
    FunctionDescriptionDoc associée
    withIntlayerHelper asynchrone pour envelopper la configuration Next.js, garantissant que les dictionnaires Intlayer sont préparés avant la build. Prépare les fichiers de contenu et configure les plugins webpack/SWC.-
    withIntlayerSyncHelper synchrone pour envelopper la configuration Next.js, idéal pour les configurations où l'async n'est pas possible/souhaité. Ne prépare pas les dictionnaires au démarrage du serveur.-

    Fournisseurs

    Importer :

    tsx
    import "next-intlayer";
    

    ou

    tsx
    import "next-intlayer/server";
    
    ComposantDescriptionDoc associée
    IntlayerClientProviderProvider pour les composants côté client dans le App Router de Next.js. Enveloppe IntlayerProvider de react-intlayer.-
    IntlayerServerProviderProvider pour les composants côté serveur dans Next.js (App Router). Fournit le contexte de la locale sur le serveur.-
    IntlayerServerWrapper côté serveur pour le contenu Intlayer dans l'App Router. Assure une gestion appropriée des locales dans les Server Components.-
    HTMLProviderProvider pour les paramètres d'internationalisation liés au HTML. Permet de surcharger les composants pour les balises HTML.-
    HTMLRendererRend du contenu HTML avec des composants personnalisés.-
    MarkdownProviderProvider pour le contexte de rendu markdown. Permet de remplacer des composants pour les éléments markdown.-
    MarkdownRendererRend du contenu markdown avec des composants personnalisés.-

    Hooks (côté client)

    Importer :

    tsx
    import "next-intlayer";
    

    Réexporte la plupart des hooks depuis react-intlayer.

    HookDescriptionDocumentation associée
    useIntlayerHook côté client qui sélectionne un dictionnaire par sa clé et retourne son contenu. Utilise la locale provenant du contexte si elle n'est pas fournie.useIntlayer
    useDictionaryHook qui transforme un objet dictionnaire et retourne le contenu pour la locale courante. Traite les traductions t(), les énumérations, etc.useDictionary
    useDictionaryAsyncHook qui gère des dictionnaires asynchrones. Accepte une map de dictionnaires basée sur des promesses et la résout pour la locale courante.-
    useDictionaryDynamicHook qui gère des dictionnaires dynamiques chargés par clé. Utilise React Suspense en interne pour les états de chargement.-
    useLocaleHook côté client pour récupérer la locale courante et une fonction pour la définir. Amélioré pour Next.js App Router avec prise en charge de la navigation.useLocale
    usePathnameRetourne le chemin actuel sans le préfixe de la locale et sans les paramètres de requête de locale.usePathname
    useRewriteURLHook côté client pour gérer les réécritures d'URL. Met automatiquement à jour l'URL si une règle de réécriture localisée plus "propre" existe.useRewriteURL
    useLocalePageRouterHook spécifique au Page Router de Next.js pour la gestion des locales. Gère les redirections et les rechargements de page lors des changements de locale.-
    useI18nHook qui fournit une fonction de traduction t() pour accéder au contenu imbriqué par clé. Imite le pattern i18next/next-intl.useI18n
    useIntlHook qui fournit un objet Intl lié à la locale. Injecte automatiquement la locale courante et utilise une mise en cache optimisée.-
    useLoadDynamicHook pour charger des dictionnaires dynamiques en utilisant React Suspense. Accepte une clé et une promesse, met en cache les résultats.-
    useHTMLRendererHook pour obtenir une fonction de rendu HTML préconfigurée.-
    useMarkdownRendererHook pour obtenir une fonction de rendu Markdown préconfigurée.-

    Fonctions (côté serveur)

    Import :

    tsx
    import "next-intlayer/server";
    
    FonctionDescriptionDocumentation associée
    tVersion côté serveur de la fonction de traduction pour l'App Router de Next.js. Renvoie la traduction du contenu multilingue pour la locale du serveur.translation
    getLocaleFonction utilitaire pour extraire la locale courante depuis les en-têtes et cookies de Next.js. Conçue pour les Server Components, Server Actions ou Route Handlers.-
    generateStaticParamsGénère des paramètres statiques pour les routes dynamiques de Next.js en fonction des locales configurées. Renvoie un tableau d'objets de locale pour le pré-rendu.-
    localeFonction pour obtenir ou définir la locale dans le contexte serveur (App Router). Fournit la gestion des locales dans les Server Components.-

    Types

    Importer :

    tsx
    import "next-intlayer";
    
    TypeDescription
    NextPageIntlayerType pour les pages Next.js avec prise en charge d'Intlayer. Type générique incluant le paramètre locale.
    Next14PageIntlayerType pour les pages Next.js 14 avec prise en charge d'Intlayer.
    Next15PageIntlayerType pour les pages Next.js 15 avec prise en charge d'Intlayer.
    NextLayoutIntlayerType pour les layouts Next.js avec prise en charge d'Intlayer. Type générique incluant le paramètre locale.
    Next14LayoutIntlayerType pour les layouts Next.js 14 avec prise en charge d'Intlayer.
    Next15LayoutIntlayerType pour les layouts Next.js 15 avec prise en charge d'Intlayer.
    LocalParamsType pour les paramètres de route Next.js comportant la locale. Objet avec la propriété locale.
    LocalPromiseParamsType pour les paramètres de route Next.js comportant la locale (version asynchrone). Promise qui résout en un objet avec la propriété locale.