kip

kip

ex_cldr Core Team

Localize is the next generation localisation library for Elixir. Think of it as ex_cldr version 3.0. The first version will be released before the end of March 2026 and is under active development.

The goals and objectives are documented on Github, with the headline objectives being:

  • No “backend” architecture, CLDR data will be stored in :persistent_term.
  • No compile-time configuration. Runtime all the way.
  • Dynamic loading of locales. No more compile-time configuration of supported locales. Downloading and storage/access will be pluggable. This may suit organisations with specific security policies or running Localize on devices with limited connectivity or resources.
  • Simplified library packaging. Localize will have everything except web-oriented and SQL oriented modules which will go in their own libraries.
  • A Phoenix-based locale explorer will be available to make it easier and clearer to see what capabilities are possible with Localize (enabled by CLDR). At a later stage the locale explorer will also be hosted on a publicly available web server.

Note this will not be a drop-in replacement. However the public API will be very very similar with the main breaking change being the removal of any backend argument.

Feedback, suggestions all very welcome either here, or on GitHub discussions.

Showing Posts 1 to 10

wmnnd

wmnnd

That sounds great, thank you for working on this - I’ll be sure to give it a try soon.

lawik

lawik

Nerves Core Team

You absolute legend.

16
Post #2
kip

kip OP

ex_cldr Core Team

Making Localize a good Nerves citizen is definitely in scope too. No compile time configuration will help. But primarily by supporting configurable locale sources and configurable locale storage and access methods. (thanks for the kind words).

14
Post #3
andreh

andreh

Awesome! I just want to thank you for your work. @lawik is right, you’re a legend!

jarrodm

jarrodm

Great work as always, @kip! Out of curiosity, did you do you any perf comparisons between the :persistent_term and precompiled backends?

kip

kip OP

ex_cldr Core Team

I did do some very loose and informal performance comparisons some time ago and the performance seemed comparable. I will certainly be doing comapative performance testing when I get further along the development path.

jarrodm

jarrodm

So better ergonomics for roughly the same performance! Nice.

kip

kip OP

ex_cldr Core Team

Localize will officially launch next Monday. I’ve got a full week of launch activity planned. And a shiny new blog at elixir-localize.com where I’m committed to spending more time writing about they why and how localisation matters and how localize can make it almost trivial to write localised Elixir applications.

Each day next week there is something launching:

  • Monday is the core localize library. It compiles faster than ex_cldr, runs faster, uses less memory, has simpler packaging (nearly everything in one package).

  • Tuesday is localize_web that includes accept-header parsing and locale setting, localised routes and some HTML helpers.

  • Wednesday is the launch of localize_person_names for formatting names in a localised manner; in formal, informal and other ways. And the launch of Calendrical which is a consolidated set of calendars now including Gregorian, Julian, Islamic (four variants), Hebrew, Persian, Indian, Buddhist, Composite and user definable. And a few more I probably missed.

  • Thursday its time for some new fun things. localize_phonenumber that wraps libphonenumber for parsing and formatting phone numbers and localize_address for parsing free-form address data and then formatting its using the OpenCageData templates.

  • Friday is the “one more thing” release. It’s called Intl and its an API wrapper for Localize that maps very closely to the Javascript Intl API. This should make it easier for developers who are more front-end savvy to adopt localisation in Elixir more easily.

I’ll be posting more long form content at elixir-localize.com as the week progresses.

Eight years into developing ex_cldr and friends I think I can say confidently that localize is better in every way. I hope you’ll try it out, give feedback, open issues and help me make that claim a reality.

34
Post #8
jswanner

jswanner

Looking forward to next week!

Terbium-135

Terbium-135

I hope the refactoring is not too painful :zany_face:
Thx for all your work!

Where Next? Top

Trending in Announcing Top

restlessronin
The repo is at GitHub - cyberchitta/openai_ex: Community maintained Elixir library for OpenAI API · GitHub. Docs are at OpenaiEx User Gu...
152 12366 136
New
type1fool
WebAuthnLiveComponent WebAuthnComponents See this post about renaming the package. Passwordless authentication for Phoenix LiveView app...
New
GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
woylie
I released Doggo, a collection of unstyled Phoenix components. https://github.com/woylie/doggo Features Unstyled Phoenix components....
New
ahamez
Hi everyone, I’ve been working on this protobuf library for 3 years. We use it in the company I work for, EasyMile, to communicate with ...
New
garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
kip
I’ll shortly be launching Text, a nascent text analysis library. Current functionality In this early version (not ready for prime time) ...
New

Other Trending Topics Top

budgie
A little off-topic, but I feel like people here have a good head on their shoulders. I used to be quite good at making software. Was luc...
New
KristerV
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New
budgie
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with. But I don’t use it anymore. Serverless was the promis...
New
Null-logic-0
What IDE or editor are you using for Elixir development? Personally, I use Zed, and I really like it, but sometimes I wish there were a ...
New
type1fool
I just stumbled on a newly redesigned elixir-lang.org. :tada: It looks like @Software_Mansion did the work, and I think it is generally a...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews