https://github.com/hissssst/better_number
Convert numbers to various string formats, such as currency
https://github.com/hissssst/better_number
Last synced: 2 months ago
JSON representation
Convert numbers to various string formats, such as currency
- Host: GitHub
- URL: https://github.com/hissssst/better_number
- Owner: hissssst
- License: mit
- Created: 2023-04-14T00:01:00.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-10T20:36:41.000Z (over 1 year ago)
- Last Synced: 2024-11-05T06:25:48.630Z (11 months ago)
- Language: Elixir
- Homepage:
- Size: 28.3 KB
- Stars: 18
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Better Number
`BetterNumber` is an Elixir library which provides functions to convert numbers into a variety of different formats. It is a fork of [Daniel Berkompas's Number](https://github.com/danielberkompas/number) but it
1. Has slightly more features
2. Does not perform any configuration lookups and therefore each function is __100% pure__.
3. Has no `__using__` to import functions
4. Has correct type specifications
5. Actively maintained
## Features
* Conversion to currency, where everything is customizable
```elixir
BetterNumber.to_currency(2034.46)
"$2,034.46"
```* Conversion to international phone format
```elixir
BetterNumber.to_phone(1112223333, area_code: true, country_code: 1)
"+1 (111) 222-3333"
```* Conversion to percentage
```elixir
BetterNumber.to_percentage(100, precision: 0)
"100%"
```* Conversion to human readable format
```elixir
BetterNumber.to_human(1234)
"1.23 Thousand"
```* Just splitting the number with commas
```elixir
BetterNumber.to_delimited(12345678)
"12,345,678"
```> Note:
>
> Every function is extremely customizable, and has a ton of options## Installation
Get it from Hex:
```elixir
defp deps do
[
{:better_number, "~> 1.0.1"}
]
end
```Then run `mix deps.get`.
## Usage
```elixir
defmodule MyModule do
alias BetterNumber, as: Number...
end
```See the [Hex documentation](http://hexdocs.pm/better_number/) for more information
about the modules provided by `BetterNumber`.## License
MIT. See [LICENSE](https://github.com/hissssst/better_number/blob/master/LICENSE) for more details.