Skip to content

ironheart122/raydium-sdk-V2

This branch is 7 commits behind raydium-io/raydium-sdk-V2:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e55ad0b · Jan 30, 2025
Jun 27, 2023
Aug 12, 2022
Jan 30, 2025
Sep 20, 2024
Nov 9, 2021
Jan 9, 2022
Nov 9, 2021
Jun 28, 2023
Nov 25, 2024
Nov 9, 2021
Jan 9, 2022
Oct 27, 2022
Aug 25, 2022
Nov 9, 2021
Dec 24, 2024
Jul 5, 2022
Jan 30, 2025
Oct 24, 2023
Jan 9, 2022
Nov 25, 2024

Repository files navigation

Raydium SDK

npm

An SDK for building applications on top of Raydium.

Usage Guide

Installation

$ yarn add @raydium-io/raydium-sdk-v2

SDK method Demo

SDK V2 Demo Repo

SDK local test

$ yarn dev {directory}

e.g. yarn dev test/init.ts

Features

Initialization

import { Raydium } from "@raydium-io/raydium-sdk";
const raydium = await Raydium.load({
  connection,
  owner, // key pair or publicKey, if you run a node process, provide keyPair
  signAllTransactions, // optional - provide sign functions provided by @solana/wallet-adapter-react
  tokenAccounts, // optional, if dapp handle it by self can provide to sdk
  tokenAccountRowInfos, // optional, if dapp handle it by self can provide to sdk
  disableLoadToken: false, // default is false, if you don't need token info, set to true
});

how to transform token account data

import { parseTokenAccountResp } from "@raydium-io/raydium-sdk";

const solAccountResp = await connection.getAccountInfo(owner.publicKey);
const tokenAccountResp = await connection.getTokenAccountsByOwner(owner.publicKey, { programId: TOKEN_PROGRAM_ID });
const token2022Req = await connection.getTokenAccountsByOwner(owner.publicKey, { programId: TOKEN_2022_PROGRAM_ID });
const tokenAccountData = parseTokenAccountResp({
  owner: owner.publicKey,
  solAccountResp,
  tokenAccountResp: {
    context: tokenAccountResp.context,
    value: [...tokenAccountResp.value, ...token2022Req.value],
  },
});

data after initialization

# token
raydium.token.tokenList
raydium.token.tokenMap
raydium.token.mintGroup


# token account
raydium.account.tokenAccounts
raydium.account.tokenAccountRawInfos
  • fetch raydium default mint list (mainnet only)
const data = await raydium.api.getTokenList();
  • fetch mints recognizable by raydium
const data = await raydium.api.getTokenInfo([
  "So11111111111111111111111111111111111111112",
  "4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R",
]);
const data = await raydium.api.getPoolList({});
  • fetch poolInfo by id (mainnet only)
// ids: join pool ids by comma(,)
const data = await raydium.api.fetchPoolById({
  ids: "AVs9TA4nWDzfPJE9gGVNJMVhcQy3V9PGazuz33BfG2RA,8sLbNZoA1cfnvMJLPfp98ZLAnFSYCFApfJKMbiXNLwxj",
});
  • fetch pool list by mints (mainnet only)
const data = await raydium.api.fetchPoolByMints({
  mint1: "So11111111111111111111111111111111111111112",
  mint2: "4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R", // optional,
  // extra params: https://github.com/raydium-io/raydium-sdk-V2/blob/master/src/api/type.ts#L249
});
  • fetch farmInfo by id (mainnet only)
// ids: join farm ids by comma(,)
const data = await raydium.api.fetchFarmInfoById({
  ids: "4EwbZo8BZXP5313z5A2H11MRBP15M5n6YxfmkjXESKAW,HUDr9BDaAGqi37xbQHzxCyXvfMCKPTPNF8g9c9bPu1Fu",
});

About

Open-source Typescript SDK for Raydium

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 99.9%
  • Other 0.1%