NodeJS-i18n

Minimalistic internationalization using gettext style for NodeJS

MIT License

Downloads
224
Stars
2
Committers
3

NodeJS i18n

Minimalistic internationalization using gettext style for NodeJS

Features

  • Gettext Style
  • Easy Imprementation
  • Create .po via CLI
  • Select Lang per User

Installation

Module available through the npm registry. It can be installed using the npm or yarn command line tool.

# Yarn (Recomend)
yarn global add nodejs-i18n
# NPM 
npm install nodejs-i18n --global

Usage

# Create file
find . | grep .js | sort | nodejs-i18n > en.po

# Create file (all strings) [beta]
find . | grep .js | sort | nodejs-i18n --all > en.po

# Create file (get identifier value) [beta]
find . | grep .js | sort | nodejs-i18n --value > en.po

Example

const { Resources, Translation } = require('nodejs-i18n')

const resources = new Resources()
resources.load('pt', 'pt.po')

const user = new Translation('pt')

//i18n: My Hello World with NodeJs i18n
const world = user._`world` // Mundo
user._`Hello ${world}` // Olá mundo

Documentation

Options

Options :: Resources({})

  • lang - String

Lang id. Default value: en

Options :: Resources({}).load(lang, file)

Load translation

  • lang - String

Lang id.

  • file - String

File path

Options :: Resources({}).remove()

Remove translation.

  • lang - String

Lang id.

Options :: Translation(lang)

Select translation.

  • lang - String

Lang id.

Options :: Translation(lang)._(string)

String translation.

  • String - String

CLI

Create en.po files with nodejs-i18n. Add in your package.json

"scripts": {
	"i18n": "find . | grep .js | sort | nodejs-i18n > en.po"
}

and run $ npm run i18n or $ yarn i18n

Tests

To run the test suite, first install the dependencies, then run test:

# Using Yarn
yarn test

Dependencies

Dev Dependency

Related

Contributors

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue. List of all contributors.

License

MIT © TiagoDanin