0.5.0-alpha.2 • Published 14 days ago

@c3exchange/sdk v0.5.0-alpha.2

Weekly downloads
-
License
Apache-2.0
Repository
-
Last release
14 days ago

C3 Exchange SDK

Website shields.io Discord Twitter

Overview

C3SDK is the javascript package needed to interact with C3.

Installation

The package can be installed via npm:

npm install @c3exchange/sdk

API Usage

Quick start

import { C3SDK } from "@c3exchange/sdk";
const c3Sdk = new C3SDK();

Obtain instruments and markets

import { Instrument, MarketInfo } from "@c3exchange/sdk";

async function getInfoFromC3API(c3Sdk: C3SDK) {
  const instruments: Instrument[] = await c3Sdk.getInstruments();
  const markets: MarketInfo[] = await c3Sdk.getMarkets().getAll();
}

Login your account to C3

import { C3SDK, EVMSigner, CHAIN_ID_ETH } from "@c3exchange/sdk";
import * as ethers from "ethers";

async function loginToC3(c3Sdk: C3SDK) {
  const ethereumAccount = ethers.Wallet.createRandom();

  const signer = new EVMSigner(
    ethereumAccount.address,
    CHAIN_ID_ETH,
    ethereumAccount
  );

  const c3Account = await c3Sdk.login(signer);

  return c3Account;
}

Sign deposit operation

import {
  InstrumentAmount,
  Account,
  EVMSigner,
  toChainName,
} from "@c3exchange/sdk";

async function depositToC3(
  c3Account: Account<EVMSigner>,
  amount: InstrumentAmount
) {
  const originChain = "ethereum";

  const wormholeDeposit = await c3Account.deposit(amount, originChain);
  await wormholeDeposit.waitForWormholeVAA();
}

Sign lend operation

import {
  InstrumentAmount,
  Account,
  EVMSigner,
  toChainName,
} from "@c3exchange/sdk";

async function lendInC3(
  c3Account: Account<EVMSigner>,
  amount: InstrumentAmount
) {
  const txid = await c3resultAccount.lend(amount);
  console.log(txid);
}

Copyright and License

See LICENSE file.

0.5.0-alpha.2

14 days ago

0.5.0-alpha.1

29 days ago

0.4.0-alpha.4

5 months ago

0.4.0-alpha.3

5 months ago

0.4.0-alpha.2

5 months ago

0.3.0

6 months ago

0.4.0-alpha.1

7 months ago

0.2.0-alpha.1

7 months ago

0.0.1-alpha.2

9 months ago

0.0.1-alpha.1

9 months ago

0.0.1-alpha.0

10 months ago