npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

i18n-helpers

v0.1.2

Published

A set of helpers for performing i18n translations

Downloads

8

Readme

i18n-helpers

A set of helpers useful when introducing i18n internationalization to the application.

Installation

To install the package, just type:


npm i -g i18n-helpers

or, using yarn:


yarn global add i18n-helpers

NodeJS 6.x is required to use the package.

Merge

Merges original internationalization file (usually english) and translation file. Both files have to be in JSON format.

This module is useful when searching for missing keys or when one wants to provide placeholders for missing keys. It also finds any keys that are existing in the translation and are missing in the original.

Generates either report or explicit list of keys.

Usage


i18-helpers merge [-a | -p | -v | -i] original translation

Minimal example

To run the merge in the simplest way, just provide paths to the original internationalization file and the translated one.


i18-helpers merge 'original.json' 'translation.json'

Flags

The tool can be run with different flags:

| Flag | Description | |----------------------------------|---------------------------------------------------------------------------------------------------------------| | -a,--append-original | Flag depicting that the original translation should be appended after the placeholder | | -i,--indent [value] | Indentation value used for building the resulting file. Check JSON.stringify documentation for the details. | | -p,--placeholder [placeholder] | Custom placeholder. Default placeholder is __I18N_MISSING__ | | -v,--verbose | Generates verbose report containing list of keys in particular groups |

Example output

Merge command generates simple report about performed operations. Example below:


╔═════════════════════════╤═════╗
║ New keys                │ 126 ║
╟─────────────────────────┼─────╢
║ Existing keys           │ 422 ║
╟─────────────────────────┼─────╢
║ Skipped keys            │ 0   ║
╟─────────────────────────┼─────╢
║ Missing in the original │ 0   ║
╟─────────────────────────┼─────╢
║ Total                   │ 548 ║
╚═════════════════════════╧═════╝
  • New keys is related to the keys missing in the translation
  • Existing keys are the ones that are probably already translated and exist in the translation file
  • Skipped keys are related to the ones that are inconsistent between original and translation (e.g. key in the original holds an object and in the translation is just a plain value)
  • Missing in the original holds the number of the keys missing in the original that are existing in the translation
  • Total is the sum of keys generated in the output

If the output indicates that some inconsistencies occurred (number of skipped or missing keys different than 0), one can use -v flag to investigate problems.