i18next-async-backend

i18next backend which loads resources via promises. Useful when loading resources via dynamic imports.

Usage no npm install needed!

<script type="module">
  import i18nextAsyncBackend from 'https://cdn.skypack.dev/i18next-async-backend';
</script>

README

i18next-async-backend

Build npm changesets

i18next backend which loads resources via promises. Useful when loading resources via dynamic imports.

Installation

npm

npm install i18next-async-backend

Yarn

yarn add i18next-async-backend

Usage

import i18next from 'i18next'
import AsyncBackend from 'i18next-async-backend'

const resources = {
  es: () => import('./locales/es/translation.json'),
}

i18next.use(AsyncBackend).init({
  backend: { resources },
})

Recipes

Single namespace

const resources = {
  en: () => import('./locales/en/translation.json'),
  es: () => import('./locales/es/translation.json'),
}

Multiple namespaces

const resources = {
  en: {
    common: () => import('./locales/en/common.json'),
    glossary: () => import('./locales/en/glossary.json'),
  },
  es: {
    common: () => import('./locales/es/common.json'),
    glossary: () => import('./locales/es/glossary.json'),
  },
}