Skip to content
This repository has been archived by the owner. It is now read-only.
master
Switch branches/tags
Code
This branch is 18 commits ahead, 34 commits behind i18next:master.
Contribute

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
lib
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

⚠️ DEPRECATED.

Use the official backend instead

i18next-sync-fs-backend

Travis CodeCov npm version

This is a fork of the official i18next fs backend to be used node.js. It will load resources synchronously from filesystem. Right now it supports following filetypes:

  • .json
  • .json5
  • .yml

⚠️ This is a fork of the official fs backend and works syncronously.

Thanks to @arve0 for transferring the Github repo to me. His old code is available in legacy branch.

Getting started

Source can be loaded via npm.

$ npm install i18next-sync-fs-backend

Wiring up:

import i18next from 'i18next';
import Backend from 'i18next-sync-fs-backend';

i18next
  .use(Backend)
  .init({
    // This is necessary for this sync version
    // of the backend to work:
    initImmediate: false,
    // ...i18next options
  });

// i18next is immediately ready:
console.log(i18next.t('someKey'));

As with all modules you can either pass the constructor function (class) to the i18next.use or a concrete instance.

Backend Options

{
  // path where resources get loaded from
  loadPath: '/locales/{{lng}}/{{ns}}.json',

  // path to post missing resources
  addPath: '/locales/{{lng}}/{{ns}}.missing.json',

  // jsonIndent to use when storing json files
  jsonIndent: 2
}

hint {{lng}}, {{ns}} use the same prefix, suffix you define in interpolation for translations!!!

Options can be passed in:

preferred - by setting options.backend in i18next.init:

import i18next from 'i18next';
import Backend from 'i18next-sync-fs-backend';

i18next
  .use(Backend)
  .init({
    initImmediate: false,
    backend: {
      // Backend options here...
    }
  });

on construction:

import Backend from 'i18next-sync-fs-backend';
const backend = new Backend(null, options);

by calling init:

import Backend from 'i18next-sync-fs-backend';
const backend = new Backend();
backend.init(options);

About

node.js backend layer for i18next, resources is loaded synchronously from the filesystem

Resources

License

Packages

No packages published