• Stars
    star
    118
  • Rank 299,923 (Top 6 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 5 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An open source JavaScript library for fetching tickers from cryptocurrency exchanges

code-style Commitizen friendly npm (scoped) codecov

Exchanges 📉📈

A JavaScript library for getting up to date cryptocurrency exchange tickers.

Getting started

  1. Node.js 14.0 or higher is required
  2. Install using NPM

Installation

Coinranking Exchanges is a Node.js module available through the npm registry.

Before installing, download and install Node.js. Node.js 14.0 or higher is required.

Installation is done using the npm install command:

npm i @coinranking/exchanges

Usage

List all supported drivers

const exchanges = require('@coinranking/exchanges');

console.log(exchanges.list());

Get the tickers of a specific exchange

const { Binance } = require('@coinranking/exchanges');

const driver = new Binance();

driver
  .fetchTickers()
  .then((tickers) => {
    console.log(tickers);
  });

Development

Getting started

Install dependencies

npm install

Usage

List all supported drivers

node lib/cli.js list

Get the tickers of a specific exchange

node lib/cli.js tickers [name of the exchange]
Flags
Name Flag Description
Record -R, --record Record the requests, and save them as fixtures.
API Key -k, --key For passing down an API key when the driver requires one. When used in combination with the -R flag the key will be masked in the fixtures.

Documentation

See the documentation for more information.

Contributing

Bug reports and pull requests are welcome. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

Adding an exchange

  1. Add a new driver (see the examples)
  2. Add the driver alphabetically to drivers/index.js
  3. Add a new fixture (use the record option of the CLI 'tickers' command)

Single API calls are highly preferred. When adding an exchange be aware of the base and quote. A driver should at least support base, quote, close and baseVolume or quoteVolume. And optionally open, high, low, ask, bid, baseName, baseReference, quoteName and quoteReference.

Listing requirements

Before we approve your pull request, we’d like to review the exchange and check if it meets our listing requirements.

Ticking off all the boxes? Cool! Send us your listing request at [email protected] and include your daily trading volume + a link to your platform. We will then review your exchange ASAP.

Examples

  • Driver basis: Shows the basic setup of a driver, which can be used as the starting point for new ones.
  • Driver with API key: Shows how to set up a driver that uses an API which requires a key.

Conventions

  1. Airbnb JavaScript Style Guide
  2. Conventional commits

Links

Reach out to us

Other

License

MIT