slouchpie
There seem to be 2 Elixir “Money” libs:
- GitHub - elixirmoney/money: Elixir library for working with Money safer, easier, and fun... Is an interpretation of the Fowler's Money pattern in fun.prog. · GitHub
- GitHub - ex-money/money: Elixir implementation of Money with Currency · GitHub
and neither one makes reference to the other.
Personally, I use the kipcole9 one, a.k.a :ex_money because it seems to be more well-considered (it uses :cldr_utils) and the author is very active here (Ex_money - money with currency type).
However, my library of choice is “less popular” (less stars and forks) on Github.
So I am wondering what other people think. Is one library better than the other? Is it bad to have 2 competing libraries doing much the same thing? Is it possible to achieve approximate consensus on which library deserves to be the de-facto money library for Elixir?
Trending in Discussions
Hey there,
It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
I am happy to introduce the very α version of the new programming language compiled to BEAM.
Welcome Cure.
It has literally three kille...
New
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
Hi there! :wave:
@frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
I’ve been using Emacs as my main code editor for more than a two years. It’s a custom build version although I’ve tried doom emacs and sp...
New
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
Lately I’ve been thinking about how to organize components as a LiveView application grows. One of the pain points I’ve found (for myself...
New
Other Trending Topics
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
Hobbes is a low-level distributed database for the Elixir programming language.
Hobbes provides a simple, safe, and scalable storage lay...
New
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
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself.
My main conc...
New
Just published claude-code-elixir, a plugin marketplace for Claude Code with Elixir support. These are the plugins I’ve been using for my...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ai
- #ecto-query
- #elixirconf-us
- #blog-post
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #metaprogramming
- #hex










Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
egze
I remember that
kipcole9/moneytook much more time to compile and we replaced it with plain Decimal. Decimal — Decimal v3.1.1I used
elixirmoney/moneyalso before and it just worked.slouchpie
kipcole9/moneytakes more time to compile because of:cldr. As per the docsWhen using just
:decimal, did you find it hard to account for all of these: GitHub - ex-money/money: Elixir implementation of Money with Currency · GitHub Personally I am unable to bear the mental burden of keeping these things in mind when working with money so that’s why I use:ex_money, a.k.a.kipcole9/money.egze
Yepp, I read it. Our use case was quite simple, so we were fine.
LostKobrakai
My take is that the
:moneylibrary is mostly providing a datatype, while:ex_moneyis a toolkit of dealing with money, especially in an internationalized fashion.Some of those factors:
In
:moneythe list of currencies is static/hardcoded and you can only add additional ones.:ex_moneydepends on:cldrfor currencies instead of maintaining a list on it’s own and also has means for adding additional ones.With
:cldrin the back:ex_cldrdoes not only know the number of decimal places a currency uses, but also about things like alternate rounding rules, like when cash is supposed to round differently than e.g. accounting.:moneydoes only support a single set of default formatting or customized per API call.:ex_moneyagain uses:cldrto adjust formatting to settings matching a certain locale (like the users’).So all in all it’s
:ex_moneyfor me if only for the fact of harnessing the knowledge of a unicode maintained database of those mentioned things as opposed to a library maintainer having a (likely worse) maintained copy of it.slouchpie
This is a good summary of the main differences between the 2 libs.
I think this should be made clear in the Github READMEs of both libs.
strzibny
I use GitHub - elixirmoney/money: Elixir library for working with Money safer, easier, and fun... Is an interpretation of the Fowler's Money pattern in fun.prog. · GitHub together with GitHub - jshmrtn/currency-conversion: Convert Money Amounts between currencies. · GitHub.
I also contributed to both. They are well written, actively maintained and the authors were helpful. What more do you need?
slouchpie
Thank you for contributing to the conversation (and to those libraries!).
For me, I like to keep my apps globally applicable, so I care about the use of
:cldrand the ability to configure which locales/countries/currencies my app understands and can work with. Moreover, if you want to use cryptocurrencies, it behooves developers to be able to define their own custom currencies.What I am looking for is for the community to confirm that one library is “more correct” or “more comprehensive” than the other. I believe, right now, that
:ex_money, a.k.a.kipcole9/moneyis both more correct and comprehensive and yet has less stars and forks on Github (which might influence new Elixir devs).strzibny
Yes, I think the use of
:cldris an excellent point.Every library can have its users, there does not have to be a more correct one. Is Phoenix the most correct web framework for Elixir?
slouchpie
With that in mind, I think the 2 libs should reference each other. A new Elixir dev visiting github would not know which lib to choose.
mindok
I’m sure the maintainers would appreciate a PR to the readmes (and maybe the docs) to include those references