Skip to content

Latest commit

 

History

History
112 lines (88 loc) · 10.2 KB

plugins-and-utils.md

File metadata and controls

112 lines (88 loc) · 10.2 KB

Plugins and Utils

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
i18next-fluent fluent i18nFormat plugin to use mozilla fluent format with i18next
i18next-icu ICU i18nFormat plugin to use ICU format with i18next based on yahoo/intl-messageformat
i18next-polyglot polyglot i18nFormat plugin to use airbnb/polyglot.js format with i18next

extraction tools

name description
i18next-scanner Scan your code, extract translation keys/values, and merge them into i18n resource files.
i18next-parser A simple command line and gulp plugin that lets you parse your code and extract the translations keys in it.
babel-plugin-i18next-extract A babel plugin that can extract keys in JSONv3 format.

utils

util type description
i18next-gettext-converter converter Converts gettext .mo or .po to 18next json format and vice versa.
csv2i18next converter Convert CSV files to JSON & YAML for i18next.js
i18next-json-csv-converter converter Convert between CSV files and JSON format for i18next
resx2i18next converter Convert ResX-files to json resources compatible with i18next
i18nextResourceGenerator extractor Intellij IDEA Plugin for i18next resource generation
aurelia-i18next-parser extractor Extracts i18n keys and values from source files.
grunt-i18next bundler bundle language resource files for i18next
i18next-po-loader bundler Load gettext PO files as i18next format directly in webpack
i18next-loader bundler webpack loader that can translate your code and generate bundle per each language
@alienfast/i18next-loader 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.
webpack i18next-resource-store-loader 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.
ya-i18next-webpack-plugin bundler Yet another i18next webpack plugin. This plugin collects keys from webpack parsing phase, saves missing translations into specified path, copies translation files.
rollup-plugin-i18next-conv bundler/converter Import .po files with rollup
i18next-static-analysis util analyse statically your code to find calls to i18next and validates them for all your supported languages
i18next-json-sync util Keep i18next JSON resource files in sync with source language file
eslint-plugin-i18next util Make sure that all text shown are translated

services

name description
locize localization as a service. Solves your localization process using i18next.
spacetranslate Simple Translation Service at Scale. Solves your localization process using i18next.

backend extenders

backend description
chained backend combine multiple of the existing backends for fallback and caching scenarios
i18next-multiload-backend-adapter 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
localstorage backend 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.
async storage 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.
xhr backend backend layer for i18next using browsers xhr
fetch backend backend layer for i18next using browsers fetch
fluent backend backend to load fluent syntax .ftl files via xhr
keys ondemand fetch missing keys on demand
i18next.gettext gettext backend of i18next
nodejs filesystem node.js backend layer for i18next using fs module to load resources from filesystem
nodejs filesystem (sync) node.js backend layer for i18next using fs module to load resources synchronous from filesystem
nodejs remote node.js backend layer for i18next using request module to load resources from another server
nodejs mongodb i18next node.js backend layer for i18next using mongodb
nodejs couchbase i18next node.js backend layer for i18next using couchbase
Zanata nodejs backend i18next node.js backend layer for Zanata
i18next-firebase-backend i18next Backend Using Firebase
i18next-smart-bucket-backend i18next backend for smart-bucket
locize backend backend layer for locize.com - localization as a service
service backend backend layer for external services such as spacetranslate.com - Simple Translation Service at Scale and locize.com - localization as a service.
locize nodejs backend backend layer for locize.com - localization as a service
service node backend backend layer for external services such as spacetranslate.com - Simple Translation Service at Scale and locize.com - localization as a service.

language detector

language detector description
browser language detector used in browser environment for i18next
nodejs express language detector for express.js (nodejs).
nodejs koa A i18next language detecting plugin for Koa framework.
react native language detector for React Native.
react native Async Storage language detector for React Native that saves the user's choice in Async Storage, used for persistance.
electron language detector for electron apps.

post processors

post processor description
sprintf post processor sprintf post processor for i18next.
interval plurals interval based plurals like. "One Item", "A few items", "A lot of items"
i18next-react-postprocessor embed React elements inside your i18next translation strings
i18next-korean-postposition-processor i18next post-processor for processing korean postposition
i18next-pseudo i18next post-processor for pseudolocalization of strings

loggers

Only the integrated console logger is available for now.

Create your own plugin

Want to create your own plugins? Learn more here.