1.0.3 • Published 7 months ago

currency-utils-converter v1.0.3

Weekly downloads
-
License
MIT
Repository
-
Last release
7 months ago

Currency Utils

currency-utils-converter is a simple Node.js module for retrieving real-time currency exchange rates and converting values between currencies. The module uses a free exchange rate API and provides an easy-to-use interface for currency operations.

Installation

Install the module in your project using npm:

npm install currency-utils

Usage

The module allows you to convert between currencies and format amounts in a specific currency.

Example

const CurrencyUtils = require('currency-utils');

// Use the default API URL or specify a custom one
const API_URL = 'https://api.exchangerate-api.com/v4/latest/USD';
const currencyUtils = new CurrencyUtils(API_URL);

(async () => {
  try {
    // Convert 100 USD to EUR
    const convertedAmount = await currencyUtils.convert(100, 'USD', 'EUR');
    console.log(`100 USD in EUR: ${convertedAmount}`);

    // Format the converted amount
    const formattedAmount = currencyUtils.format(convertedAmount, 'EUR', 'en-US');
    console.log(`Formatted: ${formattedAmount}`);
  } catch (error) {
    console.error(`Error: ${error.message}`);
  }
})();

Methods

convert(amount, fromCurrency, toCurrency)

Converts an amount from one currency to another.

  • amount (number): The amount to convert.
  • fromCurrency (string): The currency to convert from (e.g., 'USD', 'EUR').
  • toCurrency (string): The currency to convert to (e.g., 'EUR', 'JPY').

Returns a promise with the converted amount.

format(amount, currency, locale)

Formats an amount in a specific currency.

  • amount (number): The amount to format.
  • currency (string): The currency to use for formatting (e.g., 'USD', 'EUR').
  • locale (string): The locale to use for formatting (e.g., 'en-US', 'de-DE').

Returns the formatted string.


API

By default, the module uses the ExchangeRate-API to fetch exchange rates.

Default API URL: https://api.exchangerate-api.com/v4/latest/USD

You can customize the API URL by passing it to the CurrencyUtils constructor:

const customApiUrl = 'https://example.com/api/latest/USD';
const currencyUtils = new CurrencyUtils(customApiUrl);

The API must return data in the following format:

{
  "rates": {
    "EUR": 0.85,
    "JPY": 110.53
  },
  "base": "USD"
}

Error Handling

If the API is inaccessible or returns invalid data, the module will throw an error with detailed information to help you troubleshoot.

Example error message:

Error fetching data from API: Invalid URL or data format.

License

This project is licensed under the MIT License - see the LICENSE file for details.

1.0.3

7 months ago

1.0.2

7 months ago

1.0.1

7 months ago

1.0.0

7 months ago