Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Elixir
  3. number

number

MITElixir

An Elixir library for formatting numbers into currencies, percentages, phone numbers, and human-readable formats.

GitHubGitHub
234 stars48 forks0 contributors

What is number?

Number is an Elixir library that formats numbers into various human-readable string representations. It provides functions to convert numbers into currencies, phone numbers, percentages, delimited formats, and compact human-readable units. The library solves the problem of consistently presenting numeric data in user interfaces and reports within Elixir applications.

Target Audience

Elixir developers building web applications, APIs, or data processing tools that require formatted number output for display or export. It's particularly useful for those familiar with Rails' number helpers seeking similar functionality in Elixir.

Value Proposition

Developers choose Number because it offers a comprehensive, Rails-inspired API for number formatting in Elixir with modular design, allowing selective import of only needed functions. It provides consistent, locale-aware formatting without requiring manual implementation of common number presentation logic.

Overview

ActionView::Helpers::NumberHelper for Elixir

Use Cases

Best For

  • Formatting currency amounts in Elixir web applications
  • Displaying phone numbers with country and area codes
  • Converting decimal numbers to percentage strings for reports
  • Making large numbers human-readable (e.g., '1.2K' instead of '1200')
  • Adding thousands separators to numeric data in exports
  • Building consistent number formatting across multiple Elixir modules

Not Ideal For

  • Applications requiring extensive international locale support beyond basic formats
  • Projects needing to parse formatted strings back into numeric types for two-way data handling
  • High-performance systems where minimal overhead is critical, as formatting adds function calls beyond raw Elixir operations

Pros & Cons

Pros

Comprehensive Formatting Options

Provides dedicated submodules for currency, phone numbers, percentages, human-readable numbers, and delimited formats, as shown in the README examples like 'Number.Currency.number_to_currency(2034.46)'.

Modular and Lightweight Design

Allows selective importing of only needed functions from submodules such as Number.Currency, reducing dependency bloat and keeping code clean, as highlighted in the usage section.

Rails-Inspired API Familiarity

Offers a clean, practical API similar to Rails' ActionView::Helpers::NumberHelper, making it easy for developers familiar with Ruby to adopt in Elixir projects.

Well-Maintained and Documented

Badges in the README indicate active testing, coverage, and Hex documentation, ensuring reliability and ease of use for developers.

Cons

Limited Locale Flexibility

As a partial clone of Rails helpers, it may not support all international number formats or locales out-of-the-box, requiring custom implementations for non-standard cases.

No Built-in Parsing Support

Focuses solely on formatting numbers to strings, lacking functions to parse formatted strings back into numeric types, which can be a drawback for applications needing bidirectional data conversion.

Potential Overhead for Simple Tasks

For basic formatting like adding commas, using Number might introduce unnecessary complexity compared to Elixir's native String or Integer modules, especially in performance-sensitive code.

Frequently Asked Questions

Quick Stats

Stars234
Forks48
Contributors0
Open Issues5
Last commit2 years ago
CreatedSince 2015

Tags

#hex#elixir#phone-number-formatting#number-formatting#currency-formatting#utility-library#data-presentation#rails-helpers

Built With

E
Elixir

Included in

Elixir13.1k
Auto-fetched 6 hours ago

Related Projects

moneymoney

Elixir library for working with Money safer, easier, and fun... Is an interpretation of the Fowler's Money pattern in fun.prog.

Stars846
Forks146
Last commit12 days ago
decimaldecimal

Arbitrary precision decimal arithmetic

Stars478
Forks112
Last commit9 days ago
inflexinflex

An Inflector library for Elixir

Stars384
Forks81
Last commit2 years ago
uuiduuid

UUID generator and utilities for Elixir

Stars368
Forks83
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub