All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.1.0] — April 16th, 2026
Highlights
Initial release of Localize.PhoneNumber, an Elixir NIF wrapper around Google's libphonenumber C++ library. The library provides locale-aware phone number handling with territory defaults powered by Localize.
Parsing —
Localize.PhoneNumber.parse/2accepts phone numbers in national or international format. Territory defaults are resolved from an explicit:territoryoption, a:localeoption, or automatically fromLocalize.get_locale/0.Formatting —
Localize.PhoneNumber.to_string/2formats parsed numbers as E.164, international, national, or RFC 3966 strings. Defaults to:internationalformat.Validation —
valid?/1,valid_for_territory?/2, andpossible?/1check whether a parsed number is valid, valid for a given territory, or has a plausible length.Type detection —
type/1classifies a number as:mobile,:fixed_line,:toll_free,:premium_rate,:voip, and other categories.Territory resolution —
territory/1returns the ISO 3166-1 alpha-2 territory code for a parsed number.
See the README and the Parsing and Formatting Guide for full documentation and examples.