Dinero-rust

Stability: alpha Crates.io Crates.io Crates.io

Dinero is a Rust port of Dinero.js
Dinero lets you create, calculate, and format money in Rust.
docs.rs/dinero

--- ## 📦 Install ```sh $ cargo add dinero ``` ## ⚡️ Quick start `Dinero` objects are minimal. The API is heavily inspired by `dinero.js` unless there is a more suitable Rust way to implement things. ```rust use dinero::{api::add, currencies::USD, format::to_unit, Dinero}; // Create a Dinero object of value 8.5 USD (the default scale for USD is 2) let d1 = Dinero::new(850, USD, None); // Create a Dinero object of value 5 USD with a custom scale 3 let d2 = Dinero::new(5000, USD, Some(3)); // Add the 2 Dineros, the value is stored in the result Dinero without modifying d1 and d2 let result = add(&d1, &d2); // Similar API as Dinero.js let result = d1 + d2; // Or you can use the standard operators match result { Ok(value) => println!("{} USD", to_unit(value, None, None)), // 13.5 USD Err(_) => println!("Error adding d1+d2"), } ``` ## 🦀 Disclaimer I'm using this project to learn about Rust. And I'm working my way through the language and the ecosystem. Consider the current version of Dinero **unstable**. There will _definitely_ be breaking changes. ## 📜 License [MIT](LICENSE)