sim icon indicating copy to clipboard operation
sim copied to clipboard

[REQUEST] i18n

Open JosefJezek opened this issue 6 months ago • 3 comments

Please add support for i18n...

next-intl uses the standardized ICU MessageFormat for string formatting, which is widely used and interoperable.

Project better-chatbot is using next-intl lib, see the repo for inspiration... https://github.com/cgoinglove/better-chatbot/blob/main/messages/en.json

Comparing next-intl and next-i18next

next-intl and next-i18next are both popular libraries for internationalization (i18n) in Next.js applications, but they differ in their approach and features. next-intl focuses on leveraging standards like the ICU MessageFormat for string formatting and providing a streamlined, type-safe experience, especially with Next.js's App Router and Server Components. next-i18next builds on top of react-i18next and i18next, offering a wider range of features and customization options, but potentially with a larger bundle size.

Key Differences:

Formatting:

next-intl uses the standardized ICU MessageFormat for string formatting, which is widely used and interoperable. next-i18next (and react-i18next) uses its own syntax by default, though it can be configured to use ICU MessageFormat.

Bundle Size:

next-intl has a smaller bundle size compared to next-i18next because it doesn't rely on as many external libraries like i18next.

Features:

next-i18next is known for its extensive feature set and plugin ecosystem, offering more flexibility and customization options. next-intl focuses on providing a more streamlined and type-safe experience, especially for projects using Next.js's App Router and Server Components.

Type Safety:

next-intl offers robust type safety for message keys and arguments, catching errors at compile time and improving the developer experience. next-i18next can also be configured with types, but it may not be as seamless as in next-intl.

Integration with Next.js:

next-intl is designed to integrate well with Next.js, particularly its App Router, Server Components, and static rendering capabilities. It also provides features like internationalized routing. next-i18next can also be used with Next.js, but it may require more configuration, especially with the App Router.

Structure:

next-intl uses a nested structure for messages, promoting organization and enabling advanced features like type safety. next-i18next can also be structured this way, but it's not a core requirement.

Which one to choose:

For smaller projects or those prioritizing bundle size and a streamlined experience, next-intl is a good choice. Its focus on standards and type safety makes it easy to get started and maintain.

JosefJezek avatar Jul 26 '25 08:07 JosefJezek

hey @JosefJezek i18n is on our roadmap

waleedlatif1 avatar Jul 26 '25 23:07 waleedlatif1

is anyone working on it @JosefJezek ?

abhijithp05 avatar Aug 23 '25 05:08 abhijithp05

@JosefJezek @abhijithp05 added i18n for our docs, will add to the main app for tooltips as well later on

waleedlatif1 avatar Sep 20 '25 17:09 waleedlatif1