@folks-router/js-sdk
TypeScript icon, indicating that this package has built-in type declarations

0.1.1 • Public • Published

@folks-router/js-sdk

The official JavaScript/TypeScript SDK for Folks Router DEX aggregator.

Installation

Install using your package manager of choice.

# npm
npm install @folks-router/js-sdk

# yarn
yarn add @folks-router/js-sdk

# pnpm
pnpm add @folks-router/js-sdk

Documentation

Documentation for this SDK is available at folksrouter.io.

Usage

import { FolksRouterClient, Network, SwapMode } from "@folks-router/js-sdk";
import { Algodv2, decodeUnsignedTransaction, generateAccount } from "algosdk";

const senderAccount = generateAccount();
const algodClient = new Algodv2("", "https://mainnet-api.algonode.cloud/", 443);
const folksRouterClient = new FolksRouterClient(Network.MAINNET);

async function main() {
  // Fetch Swap Quote
  const swapQuote = await folksRouterClient.fetchSwapQuote(0, 31566704, BigInt(10e6), SwapMode.FIXED_INPUT);

  // Prepare Swap Transactions
  const base64txns = await folksRouterClient.prepareSwapTransactions(senderAccount.addr, BigInt(10), swapQuote);
  const unsignedTxns = base64txns.map((txn) => decodeUnsignedTransaction(Buffer.from(txn, "base64")));
  const signedTxns = unsignedTxns.map((txn) => txn.signTxn(senderAccount.sk));

  // Submit Transaction
  await algodClient.sendRawTransaction(signedTxns).do();
}

main();

Package Sidebar

Install

npm i @folks-router/js-sdk

Weekly Downloads

0

Version

0.1.1

License

MIT

Unpacked Size

88.8 kB

Total Files

88

Last publish

Collaborators

  • gidonkatten
  • stefanofa