Repolode
amannn

amannn/next-intl

Internationalization (i18n) library for Next.js, offering ICU message syntax, locale-aware dates and numbers, and type-safe translation hooks.

Stars
4,393
Forks
397
Open issues
56
Last commit
yesterday

What is it?

next-intl adds internationalization to Next.js applications. It lets you write translated messages with interpolation, plurals, enum-based selection and rich text, using ICU message syntax in JSON files.

The library provides a single hooks-based API for translations, plus formatting for dates, times and numbers that stays consistent between server and client components, including time zone handling. Message keys are type-checked, so typos and missing keys are caught at compile time.

It supports the Next.js App Router and Server Components with static rendering, and includes internationalized routing that gives each language its own pathname, with optional localized pathnames for SEO. A companion CLI, eloqnt, can lint messages and optionally fill in missing translations.

Key features

  • 01ICU message syntax with interpolation, plurals, enum selection and rich text
  • 02Locale-aware date, time and number formatting consistent across server and client
  • 03Type-safe message keys with autocompletion
  • 04Hooks-based API usable across the codebase
  • 05Support for App Router, Server Components and static rendering
  • 06Internationalized routing with per-language and localized pathnames

Use cases

  • Adding multilingual support to a Next.js App Router website
  • Formatting dates and plural-sensitive messages across locales
  • Serving localized URLs for SEO on a multilingual site

Things to know

  • Built specifically for Next.js, so it is not a general-purpose i18n library.

Topics

FAQ

What is next-intl?
Internationalization (i18n) library for Next.js, offering ICU message syntax, locale-aware dates and numbers, and type-safe translation hooks. next-intl adds internationalization to Next.js applications. It lets you write translated messages with interpolation, plurals, enum-based selection and rich text, using ICU message syntax in JSON files.
Is next-intl free to use? What license does it have?
next-intl is open source under the MIT license. Check the license terms before using it in commercial products.
Is next-intl still maintained?
Actively maintained. The last commit to next-intl was on Nov 6, 2026.
What can I use next-intl for?
Adding multilingual support to a Next.js App Router website Formatting dates and plural-sensitive messages across locales Serving localized URLs for SEO on a multilingual site
Where can I get next-intl?
The source code and installation instructions are on GitHub: https://github.com/amannn/next-intl

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects