npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@indigo-labs/indigo-sdk

v0.3.10

Published

Indigo SDK for interacting with Indigo endpoints via lucid-evolution

Downloads

1,697

Readme

Indigo SDK

** Not ready for production yet **

indigo-sdk is a TypeScript SDK designed to interact with Indigo endpoints for managing CDPs (Collateralized Debt Positions), Staking Positions, and Stability Pool Accounts by integrating the lucid-evolution library.

Installation

npm install @indigo-labs/indigo-sdk

Development

Prerequisites

  • Node.js (version specified in .nvmrc)
  • pnpm package manager

Setup

  1. Clone this repository
  2. Install dependencies: pnpm install
  3. Build the project: pnpm run build

Available Scripts

  • pnpm run build - Build the project using tsup
  • pnpm run lint - Run ESLint to check code quality
  • pnpm run format - Format code using Prettier
  • pnpm run format:check - Check if code is properly formatted
  • pnpm run test - Run tests using Vitest

Code Quality

This project uses:

  • ESLint for code linting and quality checks
  • Prettier for code formatting
  • TypeScript for type safety

Running Tests

There are currently a few unit tests available for datums, hash checks, and interest calculations. Additionally, acceptance tests have been published for CDPs, Staking Positions, and Stability Pool accounts. These tests initialize the Indigo Protocol and positively test that the transaction building is working in an emulated Cardano Blockchain.

Instructions:

  1. Clone this repository
  2. Run pnpm install
  3. Run pnpm run test

Transaction endpoints

The SDK exposes transaction builders (mostly async functions that return a Lucid TxBuilder, or attach to an existing builder). They are grouped below by on-chain contract module under src/contracts/.

CDP (cdp)

| Function | Summary | | -------------- | -------------------------------------------------------------------------------- | | openCdp | Open a new CDP: deposit collateral, mint iAsset. | | depositCdp | Add collateral to an existing CDP. | | withdrawCdp | Withdraw collateral from an existing CDP | | mintCdp | Mint additional iAsset debt with an existing CDP. | | burnCdp | Burn iAsset to pay down existing CDP's debt. | | closeCdp | Close a CDP, burn remaining debt and withdraw collateral. | | redeemCdp | Redeem iAsset for collateral (burning CDP debt and withdrawing collateral). | | freezeCdp | Freeze a CDP marking it for liquidation. | | liquidateCdp | Liquidate a frozen CDP via the stability pool: absorb debt, move collateral. | | mergeCdps | Merge several frozen CDPs for the same iAsset into a single combined frozen CDP. |

Collector (collector)

| Function | Summary | | ---------------- | ----------------------------------------------------------- | | collectorFeeTx | Attach a collector fee payment to an in-flight transaction. |

Governance (gov)

| Function | Summary | | -------------------- | ------------------------------------------ | | createProposal | Create a governance proposal. | | createShardsChunks | Create poll shards for voting. | | vote | Vote on a poll shard. | | mergeShards | Merge poll shards to a poll manager. | | endProposal | End the poll and prepare it for execution. | | executeProposal | Execute a passed proposal. |

Stability pool (stability-pool)

| Function | Summary | | ---------------------------- | ----------------------------------------------------- | | requestSpAccountCreation | Create request for Stability pool account creation. | | requestSpAccountAdjustment | Create request for Stability pool account adjustment. | | requestSpAccountClosure | Create request for Stability pool account closure. | | processSpRequest | Process a request against a Stability pool. | | createE2s2sSnapshots | Record new epoch–scale–sum snapshot. |

Staking (staking)

| Function | Summary | | ----------------------- | -------------------------------------------------------- | | openStakingPosition | Create INDY staking position. | | adjustStakingPosition | Adjust the stake in your INDY staking position. | | closeStakingPosition | Close your staking position and withdraw your stake. | | distributeAda | Distribute ADA from collector to INDY stakers as reward. |

Interest oracle (interest-oracle)

| Function | Summary | | --------------------- | -------------------------------------------------------- | | startInterestOracle | Bootstrap an interest oracle UTxO. | | feedInterestOracle | Update the oracle’s interest rate and last-updated time. |

Interest collection (interest-collection)

| Function | Summary | | ---------------------- | ------------------------------------------------------------------------------------------- | | batchCollectInterest | Settle and collect interest for multiple CDPs in a single Tx. | | distributeInterest | Distribute funds held by interest collector UTxOs according to the interest admin multisig. | | updatePermissions | Update interest admin permissions. |

Treasury (treasury)

| Function | Summary | | --------------------------- | ---------------------------------------------------------------------------- | | treasuryFeeTx | Attach a treasury fee payment to an in-flight transaction. | | treasuryMerge | Merge multiple treasury UTxOs into one. | | treasurySplit | Split one treasury UTxO into separate outputs per asset. | | treasuryPrepareWithdrawal | Prepare treasury UTXO tied to a proposal execution and requested withdrawal. |

ROB — Indigo order book (rob)

| Function | Summary | | ----------- | ------------------------------------------------------------------------------------- | | openRob | Create a buy-iAsset or sell-iAsset order. | | cancelRob | Cancel an open order and recover the deposit. | | redeemRob | Fill market order using current oracle price. | | adjustRob | Adjust deposit on an order, update limit price and claim proceeds from order filling. | | claimRob | Claim proceeds from a filled or partially filled order. |