1.4.5 • Published 7 months ago

@nyby/i18n-cli v1.4.5

Weekly downloads
-
License
BSD-3-Clause
Repository
-
Last release
7 months ago

Nyby Internationalization (i18n) tool

Translations, in both the server side and client apps, are embedded in the code using string keys. Since the source code are simply javascript, we use Babel to extract the keys from the code.

Setup

Create an i18n.json similar to i18n.example.json. API key can be set from environment variable I18N_API_KEY. Then call the following and following the prompts.

node dist/index.js i18n.example.json

The translation strings support ICU message format.

Translations

The source of truth for the translation keys and strings are stored in Crowdin. This allows us to use the translation keys and strings to integrate with other tools and systems, e.g., figma.

To add and/or remove keys, simple add and remove the keys in the main language file, typically en.i18n.json. To synchronize the new keys to Crowdin, simply run yarn i18n upload. To get updated translation strings and key from Crowdin, simply run yarn i18n download.

The provided yarn i18n extract tool can extract and add new keys from the source code and gives warning to keys that are no longer used in the code. Keys can be added manually be editing the main language json file.

Updating the strings in the main language file will invalidate the translated strings in the other languages. This can be done using yarn i18n upload tool to upload the updated main language file strings to Crowdin. Invalidating the strings will inform the translators that new translations are required. The main language strings can also be changed and invalidated in the Crowdin app itself.

1.4.5

7 months ago

1.4.4

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago

1.2.0

2 years ago

1.2.6

2 years ago

1.2.5

2 years ago

1.2.4

2 years ago

1.3.2

2 years ago

1.2.3

2 years ago

1.1.4

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.1

2 years ago

1.1.3

2 years ago

1.1.2

2 years ago

1.1.1

2 years ago

1.1.0

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago