Napping Panda Missionaries
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    ez-localizepublic

    ez-localize

    Localizing an application should be easy, not hard. ez-localize makes it ridiculously simple.

    Usage

    Step 1: Use T() to wrap strings

    Just replace:

    console.log("Hello world!");
    

    With:

    console.log(T("Hello world!"));
    

    Step 2: Extract strings from your application

    var extractor = require('ez-localize/extractor');
    
    extractor.updateLocalizationFile("index.js", "localizations.json", {}, function() { console.log("done!")})
    

    Step 3: Create a localizer and make global

    var ezlocalize = require('ez-localize');
    var localizations = require('localizations.json');
    
    var localizer = new ezlocalize.Localizer(localizations, "en")
    localizer.makeGlobal();
    
    

    Step 4: Edit localizations.json to add other languages and translations

    You're done!

    Advanced

    String substitution:

    console.log(T("This works {0}%!", 100);
    

    React-style substitution:

    console.log(T("This works {0}%!", { x: 10 });
    

    will create array of ["This works ", { x: 10 }, "%!"]

    It handles Coffeescript and Handlebars too:

    var options = { extensions: ['.js', '.coffee'], transform: [coffeeify, hbsfy] };
    extractor.updateLocalizationsupdateLocalizationFile("index.js", "localizations.json", options, function() { console.log("done!")})
    

    To register a T helper:

    var ezlocalize = require('ez-localize');
    var handlebars = require("hbsfy/runtime");
    var localizations = require('localizations.json');
    
    var localizer = new ezlocalize.Localizer(localizations, "en")
    localizer.makeGlobal(handlebars);
    

    Only relative requires are included by default. To include another module, pass externalModules to options, an optional list of external modules to include

    install

    npm i ez-localize

    Downloadsweekly downloads

    30

    version

    1.0.3

    license

    LGPL-3.0

    repository

    githubgithub

    last publish

    collaborators

    • avatar