New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

rainbow-swap-sdk

Package Overview
Dependencies
Maintainers
0
Versions
56
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rainbow-swap-sdk

SDK for building applications on top of Rainbow Swap 🌈 - The Next Gen DEX Aggregator on TON 💎.

  • 1.1.17
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
26
decreased by-87.32%
Maintainers
0
Weekly downloads
 
Created
Source

Rainbow Swap 🌈 SDK

This SDK is designed for building applications on top of Rainbow Swap 🌈 - The Next Gen DEX Aggregator on the TON blockchain 💎.


We have plans to integrate commissions and share them with those who have integrated this SDK into their DApps.


npm version NPM License

Installation

To install the rainbow-swap-sdk, use the following npm command:

npm install rainbow-swap-sdk

Integrate your dApp

import {
    getAssetsRecord,
    getIsRainbowWalletActive,
    getBestRoute,
    getIsActivationRequired,
    getRainbowWalletActivationMessages,
    getSwapMessages
} from 'rainbow-swap-sdk';

// 1. On page load: fetch the list of available tokens
const assetsRecord = await getAssetsRecord();

...

// 2. On wallet connection: check if `Rainbow Wallet` smart contract is active
const userAddress = 'UQDGGjjuwhikx8ZPJsrLbKXGq7mx26D8pK_l8GqBejzB52Pa'; // user wallet address
const isRainbowWalletActive = await getIsRainbowWalletActive(userAddress);

...

// 3. On input asset amount, input asset, or output asset change: fetch a new swap route
const params = {
  inputAssetAmount: '1000000000', // 1 TON in nano
  inputAssetAddress: 'ton', // TON
  outputAssetAddress: 'EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs' // USDT jetton master address
};
const bestRouteResponse = await getBestRoute(params);

...

// 4. Generate sign request messages

// Check if `Rainbow Wallet` Smart Contract Activation is Required
const isActivationRequired = getIsActivationRequired(bestRouteResponse.bestRoute, isRainbowWalletActive);

if (isActivationRequired) {
    // If activation is required, the user needs to sign rainbowWalletActivationMessages first
    const activationMessages = getRainbowWalletActivationMessages(userAddress);
} else {
    // After the transaction is confirmed, or if activation is not required, the user can proceed with the swap transaction
    const slippageTolerance = '2.5'; // 2.5%
    const swapMessages = await getSwapMessages(
      userAddress,
      bestRouteResponse.bestRoute,
      slippageTolerance
    );
}

Live example

For a live example of using the SDK, visit Rainbow Swap 🌈 repository.

Contact

For questions and suggestions, contact us at Blackbot.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Keywords

FAQs

Package last updated on 15 Jul 2024

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc