---
createdAt: 2026-01-21
updatedAt: 2026-01-21
title: Документация пакета next-intlayer
description: Интеграция Intlayer, специфичная для Next.js, предоставляющая middleware и провайдеры для App Router и Page Router.
keywords:
  - next-intlayer
  - nextjs
  - react
  - internationalization
  - i18n
slugs:
  - doc
  - packages
  - next-intlayer
  - exports
history:
  - version: 8.0.0
    date: 2026-01-21
    changes: Объединённая документация для всех экспортов
---

# Пакет next-intlayer

Пакет `next-intlayer` предоставляет необходимые инструменты для интеграции Intlayer в приложения на Next.js. Он поддерживает как App Router, так и Page Router, включая middleware для маршрутизации на основе локали.

## Установка

```bash
npm install next-intlayer
```

## Экспорты

### Промежуточное ПО (Middleware)

Импорт:

```tsx
import "next-intlayer/middleware";
```

| Функция              | Описание                                                                                                                                                                            | Связанный документ                                                                                                               |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `intlayerMiddleware` | Middleware для Next.js, обрабатывающий маршрутизацию и редиректы на основе локали. Определяет локаль по заголовкам/куки и выполняет перенаправление на соответствующий путь локали. | [intlayerMiddleware](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/packages/next-intlayer/intlayerMiddleware.md) |

### Помощники конфигурации

Импорт:

```tsx
import "next-intlayer/server";
```

| Функция            | Описание                                                                                                                                                                            | Связанный документ |
| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ |
| `withIntlayer`     | Асинхронный хелпер для обёртывания конфигурации Next.js, обеспечивающий подготовку словарей Intlayer до сборки. Подготавливает файлы контента и настраивает плагины webpack/SWC.    | -                  |
| `withIntlayerSync` | Синхронный хелпер для обёртывания конфигурации Next.js, подходит для случаев, когда использование async невозможно или нежелательно. Не подготавливает словари при запуске сервера. | -                  |

### Провайдеры

Импорт:

```tsx
import "next-intlayer";
```

или

```tsx
import "next-intlayer/server";
```

| Компонент                | Описание                                                                                                              | Связанный документ |
| ------------------------ | --------------------------------------------------------------------------------------------------------------------- | ------------------ |
| `IntlayerClientProvider` | Провайдер для клиентских компонентов в Next.js App Router. Оборачивает `IntlayerProvider` из react-intlayer.          | -                  |
| `IntlayerServerProvider` | Провайдер для серверных компонентов в Next.js (App Router). Предоставляет контекст локали на сервере.                 | -                  |
| `IntlayerServer`         | Серверная оболочка для контента Intlayer в App Router. Обеспечивает корректную обработку локалей в Server Components. | -                  |

### Хуки (клиентская часть)

Импорт:

```tsx
import "next-intlayer";
```

Ре-экспортирует большинство хуков из `react-intlayer`.

| Хук                    | Описание                                                                                                                                                       | Связанный документ                                                                                                      |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `useIntlayer`          | Клиентский хук, который выбирает один dictionary по его ключу и возвращает его содержимое. Использует locale из контекста, если он не указан.                  | [useIntlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/packages/react-intlayer/useIntlayer.md)     |
| `useDictionary`        | Хук, который трансформирует объект dictionary и возвращает содержимое для текущей locale. Обрабатывает переводы `t()`, перечисления и т.д.                     | [useDictionary](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/packages/react-intlayer/useDictionary.md) |
| `useDictionaryAsync`   | Hook, который обрабатывает асинхронные словари. Принимает карту словарей на основе Promise и разрешает её для текущей локали.                                  | -                                                                                                                       |
| `useDictionaryDynamic` | Hook, который обрабатывает динамические словари, загружаемые по ключу. Внутри использует React Suspense для состояний загрузки.                                | -                                                                                                                       |
| `useLocale`            | Хук на стороне клиента для получения текущей локали и функции для её установки. Улучшен для Next.js App Router с поддержкой навигации.                         | [useLocale](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/packages/react-intlayer/useLocale.md)         |
| `useRewriteURL`        | Клиентский хук для управления правилами переписывания URL. Автоматически обновляет URL, если существует более «читаемое» локализованное правило переписывания. | [useRewriteURL](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/packages/next-intlayer/useRewriteURL.md)  |
| `useLocalePageRouter`  | Хук, специфичный для Next.js Page Router, для управления локалью. Обрабатывает перенаправления и перезагрузку страницы при изменении локали.                   | -                                                                                                                       |
| `useI18n`              | Хук, который предоставляет функцию перевода `t()` для доступа к вложенному содержимому по ключу. Повторяет паттерн i18next/next-intl.                          | [useI18n](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/packages/react-intlayer/useI18n.md)             |
| `useIntl`              | Хук, который предоставляет привязанный к локали объект `Intl`. Автоматически подставляет текущую локаль и использует оптимизированное кэширование.             | -                                                                                                                       |
| `useLoadDynamic`       | Хук для загрузки динамических словарей с использованием React Suspense. Принимает ключ и Promise, кеширует результаты.                                         | -                                                                                                                       |

### Функции (на стороне сервера)

Импорт:

```tsx
import "next-intlayer/server";
```

| Функция                | Описание                                                                                                                                                               | Связанная документация                                                                                 |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `t`                    | Серверная версия функции перевода для Next.js App Router. Возвращает перевод мультиязычного контента для локали сервера.                                               | [translation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/dictionary/translation.md) |
| `getLocale`            | Вспомогательная функция для извлечения текущей локали из заголовков и куки Next.js. Предназначена для Server Components, Server Actions или Route Handlers.            | -                                                                                                      |
| `generateStaticParams` | Генерирует статические параметры для динамических маршрутов Next.js на основе настроенных локалей. Возвращает массив объектов локалей для предварительного рендеринга. | -                                                                                                      |
| `locale`               | Функция для получения или установки локали в серверном контексте (App Router). Обеспечивает управление локалью в Server Components.                                    | -                                                                                                      |

### Типы

Импорт:

```tsx
import "next-intlayer";
```

| Тип                    | Описание                                                                                                                         |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `NextPageIntlayer`     | Тип для страниц Next.js с поддержкой Intlayer. Обобщённый тип, включающий параметр locale.                                       |
| `Next14PageIntlayer`   | Тип для страниц Next.js 14 с поддержкой Intlayer.                                                                                |
| `Next15PageIntlayer`   | Тип для страниц Next.js 15 с поддержкой Intlayer.                                                                                |
| `NextLayoutIntlayer`   | Тип для layouts Next.js с поддержкой Intlayer. Обобщённый тип, включающий параметр locale.                                       |
| `Next14LayoutIntlayer` | Тип для layouts Next.js 14 с поддержкой Intlayer.                                                                                |
| `Next15LayoutIntlayer` | Тип для layouts Next.js 15 с поддержкой Intlayer.                                                                                |
| `LocalParams`          | Тип для параметров маршрута Next.js с локалью. Объект со свойством `locale`.                                                     |
| `LocalPromiseParams`   | Тип для параметров маршрута Next.js с локалью (асинхронная версия). Promise, который разрешается в объект со свойством `locale`. |
