2.4.0 • Published 4 years ago

nodejs-i18n v2.4.0

Weekly downloads
3
License
MIT
Repository
github
Last release
4 years ago

NodeJS i18n

Travis Downloads Node Version

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