npm

@assetory/i18nmanager
TypeScript icon, indicating that this package has built-in type declarations

0.1.4 • Public • Published

i18nManager

A simple i18n Module for TypeScript/JavaScript front- and back-end.

Installation

$ npm i --save @assetory/i18n-manager

Usage

Perquisite

  1. Create a directory called i18n in your applications root folder.
  2. Create translation files named after the short form of the language and an index.js file in the folder,
  3. Import the translation files into the index file.

EXAMPLE FILES:

./i18n/de.ts or ./i18n/de.js:

{
    test:
    {
        firstMessage: "Hallo Welt!",
        secondMessage: "Es {val}."
    }
}

./i18n/en.ts or ./i18n/en.js:

{
    test:
    {
        firstMessage: "Hello World!",
        secondMessage: "This {val}."
    }
}

Getting translations

1. Import the module and translation files

TypeScript:

import i18nManager from "@assetory/i18n-manager";
import * as translations from './i18n';

JavaScript:

const i18nManager = require("@assetory/i18n-manager");
const translations = require('./i18n');

2. Create an instance, and call the determined language (en, de, ...) and source in the constructor.

const translations = new i18nManager({ language: 'en', source: translations });

3. Call the message according to the json path you set up in the translation file.

translations.message("test.sentence");

Or, if you need to supply a value

translations.messageWithValue("test.sentence", value);

5. Your output now should show the selected message, or [MISSING] if the translation has not been found.

License

This project is released under the Apache version 2 license.

Readme

Keywords

none

Package Sidebar

Install

npm i @assetory/i18nmanager

Weekly Downloads

5

Version

0.1.4

License

Apache-2.0

Unpacked Size

1.12 MB

Total Files

60

Last publish

Collaborators

  • frederikreich