Neonatal Penguin March

    TypeScript icon, indicating that this package has built-in type declarations

    1.0.14 • Public • Published

    Eversol Stake Pool SDK

    Eversol is a liquid staking protocol built on Solana. Eversol's main concept is to dedicate a percentage of the pool rewards (currently, 7% in the proposed scheme of Fees and Rewards Distribution) to the Stake Pool's Treasury, to fund the best projects being built on Solana. Unlike other stake pools, we will directly facilitate and boost the DeFi ecosystem by helping new apps and products come to life!


    $ npm install @everstake/eversol-ts-sdk

    Initialize the library

    Import the main client class ESol and initialize it with the desired cluster type:

    import { ESol } from '@everstake/eversol-ts-sdk';
    // initializes for mainnet-beta
    const eSol = new ESol('mainnet-beta');
    // initializes for testnet
    const eSol = new ESol('testnet');
    // initializes for devnet
    const eSol = new ESol('devnet');

    Deposit SOL Transaction

    Stake SOL and get your eSOL:

    const depositSolTransaction = await eSol.createDepositSolTransactionWithReferrer(userAddress, amountLamports, referrerAccount)
    // referrerAccount - should exist in referrer list (contact our team to add your address)
    // than sign and send the `transaction`

    Instant unstake eSOL Transaction

    Skip the basic Solana cool-down period and undelegate stake instantly. If the feature is not available (meaning there is not enough liquidity/reserve in the pool to cover instant unstaking), please use the standard Unstake:

    const instantUnstakeTransaction = await eSol.createUnDelegateSolTransaction(userAddress, eSolAmount)
    // than sign and send the `transaction`

    Classic delayed unstake eSOL Transaction

    Your stake will be deactivated with the beginning of a new epoch. Once the stake is inactive, feel free to withdraw the tokens within your wallet, in compliance with regular Solana staking terms.

    const delayedUnstakeTransaction = await eSol.createWithdrawSolTransaction(userAddress, eSolAmount, false)
    // than sign and send the `transaction`

    Withdraw Stake account

    const withdrawStakeAccountTransaction = await eSol.createWithdrawStakeAccountTransaction(stakeAccountPubKey, userWalletAddress)
    // than sign and send the `transaction`

    Learn more


    npm i @everstake/eversol-ts-sdk

    DownloadsWeekly Downloads






    Unpacked Size

    116 kB

    Total Files


    Last publish


    • ank-everstake