Socket
Socket
Sign inDemoInstall

crypto-convert

Package Overview
Dependencies
27
Maintainers
1
Versions
27
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    crypto-convert

Convert crypto to fiat and vice-versa instantly.


Version published
Weekly downloads
563
increased by48.55%
Maintainers
1
Install size
67.7 MB
Created
Weekly downloads
 

Readme

Source

Crypto-Convert

npm npm

Convert crypto to fiat and vice-versa instantly.

  • Top 100+ Cryptocurrencies Supported
  • 20+ fiats Supported
  • Instantly convert, no slow promises.
  • Cross-compatible on Node.js & Browser
  • Price & Ticker information updated on a configurable interval from multiple secure sources (Binance, Bitfinex, Coinbase, Kraken)
  • Any pair can be converted, be it Crypto -> Crypto or Fiat -> Crypto.

HTTP API

Free public API

https://api.coinconvert.net/convert/btc/usd?amount=1

Installation

npm i crypto-convert

Import

import CryptoConvert from 'crypto-convert';

Or with require, import it like this to get TypeScript:

const CryptoConvert = require("crypto-convert").default;

CDN For Browsers

<script src='https://coinconvert.net/assets/js/crypto-convert.min.js'></script>

Usage

const convert = new CryptoConvert(/*options?*/);

(async function(){

	await convert.ready(); //Wait for the initial cache to load
	
	convert.BTC.USD(1);
	convert.ETH.JPY(255);
	convert.LINK.LTC(5);
	convert.USD.CRO(100.1256);

	//... convert any pair
	// prices are automatically updated on background

})();

Note: You should only initialize the CryptoConvert class once. It's recommend to make a seperate file for it.

Configuration

Here are some of the options you can specify on initialization:

new CryptoConvert({
	cryptoInterval: 5000, //Crypto prices update interval in ms (default 5 seconds on Node.js & 15 seconds on Browsers)
	fiatInterval: (60 * 1e3 * 60), //Fiat prices update interval (default every 1 hour)
	calculateAverage: true, //Calculate the average crypto price from exchanges
	binance: true, //Use binance rates
	bitfinex: true, //Use bitfinex rates
	coinbase: true, //Use coinbase rates
	kraken: true, //Use kraken rates
	onUpdate: (tickers, isFiatUpdate?)=> any //Callback on every crypto update
	HTTPAgent: null //HTTP Agent for server-side proxies (Node.js only)
});

Other Parameters

Get crypto prices last updated timestamp (ms)

console.log(convert.lastUpdated)
// Prints:
// 1664657163857

Get the list supported currencies

console.log(convert.list);
// Prints:
// {
//		crypto: ['BTC','ETH', ... + 148 more],
//		fiats: ['USD', 'EUR', ... + 25 more]	
// }

Get cryptocurrencies metadata (title/symbol/logo/rank)

console.log(convert.cryptoInfo);

// Prints:
// {
//		BTC: {
//		    "id": 1,
//		    "title": "Bitcoin",
//		    "symbol": "BTC",
//		    "logo": "[logo_url]",
//		    "rank": 1
//		}
//		ETH: {
//			...
//		}
//		... +148 more
// }

Custom Plug-ins

In cases when you want to support a custom currency you can do so like this:

convert.addCurrency(
	'ANYCURRENCY',  //Your custom currency symbol here
	'USD', //The quote fiat price. Must be a supported fiat currency.
	async ()=>{
		//...call your api here
		return price;
	}, 
	5000 //Update interval in ms
);

Adding custom plugins is useful for supporting more fiats, precious metals, or anything that can be exchanged.

For removing custom currencies:

convert.removeCurrency('ANYCURRENCY');

Keywords

FAQs

Last updated on 13 Mar 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc