Globalize is a JavaScript library for internationalization and localization that leverages the official Unicode CLDR JSON data.
The library addresses the need to display and parse numbers, dates, currencies, and messages according to locale-specific conventions. Different languages and regions have distinct expectations for how these elements should be formatted—from the placement of decimal separators and thousands groupings in numbers to the ordering of date components. Globalize solves this by providing APIs to convert user-entered strings in their native format into actual values, and to format values back into locale-appropriate strings. It also handles message formatting using ICU message format patterns and plural support.
Globalize suits projects that need consistent internationalization across browsers and Node.js environments without embedding locale data directly in the codebase. The library is modular, allowing developers to load only the functionality they need—whether that is number formatting, date parsing, currency handling, or relative time expressions. It keeps code separate from i18n content and does not host locale data internally, instead empowering developers to control how data is loaded. This approach avoids duplication if multiple i18n libraries in a project use CLDR data. The tool follows the Unicode CLDR specification and UTS#35 standard.
The project maintains active development with regular updates to its codebase and documentation. The maintainers respond to issues and pull requests from the community. The roadmap indicates planned enhancements and new features under consideration. The test suite is comprehensive, covering the various modules and locales. Build and compilation processes are documented to support both development and production use cases.