i18next is an internationalization-framework written in and for JavaScript. But it's much more than that!
i18next goes beyond just providing the standard i18n features such as (plurals, context, interpolation, format). It provides you with a complete solution to localize your product from web to mobile and desktop.

learn once - translate everywhere

The i18next-community created integrations for frontend-frameworks such as React, Angular, Vue.js and many more.
But this is not where it ends. You can also use i18next with Node.js, Deno, PHP, iOS, Android and other platforms.
Your software is using i18next? - Spread the word and let the world know!
make a tweet... write it on your website... create a blog post... etc...
Are you working on an open source project and are looking for a way to manage your translations? - locize loves the open-source philosophy and may be able to support you.
Here you'll find a simple tutorial on how to best use react-i18next. Some basics of i18next and some cool possibilities on how to optimize your localization workflow.
Do you want to use i18next in Vue.js? Check out this tutorial blog post.
Did you know internationalization is also important on your app's backend? In this tutorial blog post you can check out how this works.
Are you still using i18next in jQuery? Check out this tutorial blog post.

Complete solution

Most frameworks leave it to you how translations are being loaded. You are responsible to detect the user language, to load the translations and push them into the framework.
i18next takes care of these issues for you. We provide you with plugins to:
  • detect the user language
  • load the translations
  • optionally cache the translations
  • extension, by using post-processing - e.g. to enable sprintf support


i18next comes with strong defaults but it is flexible enough to fulfill custom needs.
  • Use moment.js over intl for date formatting?
  • Prefer different pre- and suffixes for interpolation?
  • Like gettext style keys better?
i18next has you covered!


The framework was built with scalability in mind. For smaller projects, having a single file with all the translation might work, but for larger projects this approach quickly breaks down. i18next gives you the option to separate translations into multiple files and to load them on demand.


There are tons of modules built for and around i18next: from extracting translations from your code over bundling translations using webpack, to converting gettext, CSV and RESX to JSON.
Through, i18next even provides its own translation management tool: localization as a service.
Last modified 20d ago