Skip to content

wormhole-foundation/example-liquidity-layer

Repository files navigation

example-liquidity-layer

The Example Liquidity Layer utilizes the Wormhole Circle Integration contract to faciliate cross-chain transfers of USDC (along with arbitrary messages) to custom smart contracts on any CCTP-enabled blockchain.

Get Started

Clone the repo using the following command to make sure that all necessary submodules are installed:

git clone git@github.com:wormhole-foundation/example-liquidity-layer.git --recurse-submodules

Prerequisites

EVM

Install Foundry tools, which include forge, anvil and cast CLI tools.

Build, Test and Deploy Smart Contracts

Each directory represents Wormhole integrations for specific blockchain networks. Please navigate to a network subdirectory to see more details (see the relevant README.md) on building, testing and deploying the smart contracts.

Typescript SDK

To use the Typescript SDK, at the root of this repository, run:

npm ci && npm run build && npm run pack

Which will produce a .tgz file that can be installed using npm or any other package manager like:

npm install /path/to/example-liquidity-layer/wormhole-foundation-example-liquidity-layer-solana-0.0.1.tgz

Once installed, it can be used like any other package:

// ...
import * as tokenRouterSdk from "@wormhole-foundation/example-liquidity-layer-solana/tokenRouter";
import {
  LiquidityLayerDeposit,
  LiquidityLayerMessage,
} from "@wormhole-foundation/example-liquidity-layer-solana/common";
import { PreparedOrder } from "@wormhole-foundation/example-liquidity-layer-solana/tokenRouter/state";
// ...