All Projects → formatjs → Handlebars Intl

formatjs / Handlebars Intl

Licence: other
Handlebars helpers for internationalization.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Handlebars Intl

Graffino-Docker-Ninja
Webpack 4 based boilerplate to jumpstart your static or WordPress project.
Stars: ✭ 12 (-95.51%)
Mutual labels:  handlebars
escpos-xml
JavaScript library that implements the thermal printer ESC / POS protocol and provides an XML interface for preparing templates for printing.
Stars: ✭ 37 (-86.14%)
Mutual labels:  handlebars
labels
Bolt Labels extension - Translatable labels for Bolt
Stars: ✭ 18 (-93.26%)
Mutual labels:  internationalization
NitroNetSitecore
NitroNet for Sitecore extends NitroNet with the support for the WCMS Sitecore. It handles all possible presentation scenarios to integrate a handlebars frontend into Sitecore without functional loss.
Stars: ✭ 25 (-90.64%)
Mutual labels:  handlebars
python-fluent
Python implementation of Project Fluent
Stars: ✭ 142 (-46.82%)
Mutual labels:  internationalization
i18n
Package i18n is for app Internationalization and Localization.
Stars: ✭ 79 (-70.41%)
Mutual labels:  internationalization
handlebars.nested
Handlebars plugin for nesting helpers and expressions
Stars: ✭ 26 (-90.26%)
Mutual labels:  handlebars
Getx
Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies easily with Get.
Stars: ✭ 5,578 (+1989.14%)
Mutual labels:  internationalization
podsearch bot
Telegram bot that searches Podcast in iTunes store.
Stars: ✭ 28 (-89.51%)
Mutual labels:  internationalization
vite-plugin-handlebars
Vite support for Handlebars
Stars: ✭ 51 (-80.9%)
Mutual labels:  handlebars
node-backend-template
A template for NodeJS backend projects
Stars: ✭ 19 (-92.88%)
Mutual labels:  handlebars
crates
🌎 A tool to generate your locale files compatible with i18n.
Stars: ✭ 52 (-80.52%)
Mutual labels:  internationalization
django-autotranslate
A simple Django app to automatically translate the pot (.po) files generated by django's makemessages command using google translate.
Stars: ✭ 59 (-77.9%)
Mutual labels:  internationalization
flutter-internationalization
Flutter Internationalization by Using JSON Files
Stars: ✭ 18 (-93.26%)
Mutual labels:  internationalization
Vue A11y Calendar
Accessible, internationalized Vue calendar
Stars: ✭ 255 (-4.49%)
Mutual labels:  internationalization
stacy
Website generator that combines content from Contentful CMS with Handlebars templates and publishes the website in Amazon S3.
Stars: ✭ 24 (-91.01%)
Mutual labels:  handlebars
passport-examples
A variety of examples using PassportJS with ExpressJS and ReactJS applications
Stars: ✭ 44 (-83.52%)
Mutual labels:  handlebars
I18n4go
i18n tooling for Golang
Stars: ✭ 264 (-1.12%)
Mutual labels:  internationalization
Mojito
An automation platform that enables continuous localization.
Stars: ✭ 256 (-4.12%)
Mutual labels:  internationalization
blazor-ui-messages
Localization messages for Telerik UI for Blazor components: https://www.telerik.com/blazor-ui
Stars: ✭ 24 (-91.01%)
Mutual labels:  internationalization

Handlebars Intl

This library provides Handlebars helpers for internationalization. The helpers provide a declarative way to format dates, numbers, and string messages with pluralization support.

npm Version Build Status Dependency Status

Sauce Test Status

This package used to be named handlebars-helper-intl.

Overview

Handlebars Intl is part of FormatJS, the docs can be found on the webiste: http://formatjs.io/handlebars/

Features

  • Display numbers with separators.
  • Display dates and times correctly.
  • Display dates relative to "now".
  • Pluralize labels in strings.
  • Support for 200+ languages.
  • Runs in the browser and Node.js.
  • Built on standards.

Example

There are many examples on the website, but here's a comprehensive one:

{{formatMessage (intlGet "messages.post.meta")
    num=post.comments.length
    ago=(formatRelative post.date)}}
var context = {
    post: {
        date    : 1422046290531,
        comments: [/*...*/]
    }
};

var intlData = {
    locales : ['en-US'],
    messages: {
        post: {
            meta: 'Posted {ago}, {num, plural, one{# comment} other{# comments}}'
        }
    }
};

var template = Handlebars.compile(/* Template source above */);

var html = template(context, {
    data: {intl: intlData}
});

This example would render: "Posted 3 days ago, 1,000 comments" to the html variable. The post.meta message is written in the industry standard ICU Message syntax, which you can also learn about on the FormatJS website.

Contribute

Let's make Handlebars Intl and FormatJS better! If you're interested in helping, all contributions are welcome and appreciated. Handlebars Intl is just one of many packages that make up the FormatJS suite of packages, and you can contribute to any/all of them, including the Format JS website itself.

Check out the Contributing document for the details. Thanks!

License

This software is free to use under the Yahoo! Inc. BSD license. See the LICENSE file for license text and copyright information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].