Plugins and Utils

i18n formats

While the i18next format (JSON based) is the preferred solution and widely supported in translation management tools like locize.com, you might prefer another exciting format, like:

name

format

description

fluent

i18nFormat plugin to use mozilla fluent format with i18next

ICU

i18nFormat plugin to use ICU format with i18next based on yahoo/intl-messageformat

polyglot

i18nFormat plugin to use airbnb/polyglot.js format with i18next

Shopify json format

It allows developers to use the same format used by Shopify apps and themes for localization

In general, using an i18n format plugin, will remove the i18next specific format functionality, like plurals, interpolation, context, etc... you need to use the format requested in the used i18n format.

extraction tools

name

description

Scan your code, extract translation keys/values, and merge them into i18n resource files.

A simple command line and gulp plugin that lets you parse your code and extract the translations keys in it.

A babel plugin that can extract keys in JSONv4 format.

Nicely shows an overview of your translations in a UI. Check which keys are not yet translated.

utils

util

type

description

converter

Converts gettext .mo or .po to 18next json format and vice versa.

converter

Convert CSV files to JSON & YAML for i18next.js

converter

Convert between CSV files and JSON format for i18next

converter

Convert ResX-files to json resources compatible with i18next

extractor

Intellij IDEA Plugin for i18next resource generation

extractor

Extracts i18n keys and values from source files.

bundler

bundle language resource files for i18next

bundler

Convert gettext PO files into i18next JSON format during webpack builds

bundler

Load gettext PO files as i18next format directly in webpack

bundler

webpack loader that can translate your code and generate bundle per each language

bundler

This webpack loader generates the resources structure necessary for i18next. The structure is webpacked with the client bundle at build time, thus avoiding loading any language resources via extra HTTP requests.

bundler

Vite plugin to client bundle i18next locales composited from one to many json/yaml files from one to many libraries. Zero config HMR support included.

bundler

This loader generates the resStore config needed for i18next to avoid loading language resources via extra HTTP requests. It generates this config given a directory.

bundler

Yet another i18next webpack plugin. This plugin collects keys from webpack parsing phase, saves missing translations into specified path, copies translation files.

bundler/converter

Import .po files with rollup

util

analyse statically your code to find calls to i18next and validates them for all your supported languages

util

Keep i18next JSON resource files in sync with source language file

util

Syncs i18next locale resource files against a primary language. Supports namespaces, plural forms and key sorting.

util

Make sure that all text shown are translated

IDE integration

Navigation, code completion, highlighting

IDE integration

Extract, Visualize, Edit, Lint

bundler / DX

Webpack / Vite HMR plugin to reload translation resources on client & server

util / DX

Nicely shows an overview of your translations in a UI. Check which keys are not yet translated.

converter

Convert old i18next translation resources to the new i18next v4 json format. Via CLI or programmatically.

online-converter

Convert old i18next translation resources to the new i18next v4 json format directly in your browser.

Intellij idea i18next support plugin.

bundler / DX

Webpack loader to fetch locale files with ES6 modules, supporting autocomplete, type checking, HMR and content based hashing

services

Services that are known to fully support the i18next format (plural handling, ...) and sponsoring or contributing to the development of i18next.

name

description

localization as a service. Solves your localization process using i18next.

backend extenders

backend

description

combine multiple of the existing backends for fallback and caching scenarios

enable another backend's multiload behaviour of loading multiple lng-ns combinations with one request. This behaviour was removed from i18next >=v11.0.0 and could be enabled again by using this adapter

backends

backend

description

This is a i18next cache layer to be used in the browser. It will load and cache resources from localStorage and can be used in combination with the chained backend.

This is a i18next cache layer to be used in react native. It will load and cache resources from AsyncStorage and can be used in combination with the chained backend.

backend layer for i18next used in Node.js and for Deno to load translations from the filesystem.

It can also be used as cache layer in combination with the chained backend, i.e. a chained backend together with the http backendor with the locize backend.

backend layer for i18next using in node.js, in the browser and for deno (will use xhr or fetch)

backend layer for i18next using browsers xhr deprecated

backend layer for i18next using browsers fetch

backend to load fluent syntax .ftl files via xhr

fetch missing keys on demand

backend layer for i18next used in Node.js & Deno to load translations from the MongoDB.

backend layer for i18next used in Node.js & Deno to load translations from Google's Firestore DB.

node.js backend layer for i18next using fs module to load resources from filesystem

node.js backend for i18next using fs module to load resources securely in an electron app from filesystem

node.js backend layer for i18next using request module to load resources from another server

i18next node.js backend layer for i18next using couchbase

i18next node.js backend layer for Zanata

i18next Backend Using Firebase

i18next backend for smart-bucket

Use webpack code splitting to load files as a javascript bundle

i18next backend for Transifex Native

This package helps to transform resources to an i18next backend.

language detector

language detector

description

Language detector that works universally (browser + server) - Meant to be used with a universal framework, such as Next.js

language detector used in browser environment for i18next

language detector for "any" http backend, also for Deno

A i18next language detecting plugin for Koa framework.

language detector for React Native that uses native per-app language API to enable language change in system preferences.

language detector for React Native.

language detector for React Native that saves the user's choice in Async Storage, used for persistence.

language detector for electron apps.

language detector for CLI.

post processors

post processor

description

sprintf post processor for i18next.

interval based plurals like. "One Item", "A few items", "A lot of items"

embed React elements inside your i18next translation strings

i18next post-processor for processing korean postposition

i18next post-processor for pseudolocalization of strings

i18next postProcessor plugin for Node.js and in the browser that replaces all words with emojis.

loggers

Only the integrated console logger is available for now.

Create your own plugin

Want to create your own plugins? Learn more here.

Last updated