react-intl vs react-i18next for ReactJS internationalization (i18n)

Mendes picture Mendes · Apr 17, 2017 · Viewed 22.8k times · Source

I need to build a multilanguage application using ReactJS. The application needs a custom dictionary for different languages as well as automatic formatting of date/time, numbers and currency.

From all I´ve seen there are 2 very popular libraries:

reac-intl and react-i18next

What would be the advantages between one and another ? What is the most supported and popular one ?

What is the general choice for a ReactJS application supporting multiple languages ?

Answer

jamuhl picture jamuhl · May 8, 2017

@whyp's response is not taking into account react-i18next is part of i18next which has additional 2100 stars (without having a huge company in the back).

react-intl can be rather confusing (personal opinion). i18next for sure is simpler to integrate provides more features (loading resources, detection of user language)

i18next is not react only - learn once use everywhere (https://www.i18next.com/supported-frameworks.html)

i18next has an additional as a service layer: http://locize.com/ solving the localization process beside internationalization (i18n)