Skip to main content

LayerZero Developer Utilities

The Devtools toolkit 🧰 and other packages are designed to streamline the process of building, testing, and deploying omnichain applications (OApps) using LayerZero. The tools and packages are meant to support you through the end-to-end development lifecycle of a cross-chain project. Below is a list and description of the official plugins.

@layerzerolabs/create3-factory​

A factory contract for deploying smart contracts to deterministic addresses using CREATE3. Enables deploying contracts using CREATE3. Each deployer (msg.sender) has its own namespace for deployed addresses.

npm i @layerzerolabs/create3-factory

@layerzerolabs/devtools​

Development tools, utilities and types to help you get started with building Omnichain applications.

npm i @layerzerolabs/devtools

@layerzerolabs/error-parser​

This package provides utilities for handling errors returned by LayerZero protocol contracts. It offers a streamlined way to check and parse hexadecimal strings that may represent errors sent by Solidity contracts.

npm i @layerzerolabs/error-parser

@layerzerolabs/lz-definitions​

Core definitions and configurations for the LayerZero protocol. Provides helpful constants like Endpoint IDs on mainnet and testnets for both V1 and V2 protocols, message lib versions, etc. and some helpful functions like chain type, chain to name and chain to endpoint id conversions, etc.

npm i @layerzerolabs/lz-definitions

@layerzerolabs/lz-evm-oapp-v2​

Set of contracts and examples serving as the base of OApp implementation. Combining OApp Sender and Receiver functionality.

npm i @layerzerolabs/lz-evm-oapp-v2

@layerzerolabs/lz-proof-utility​

npm i @layerzerolabs/lz-proof-utility

@layerzerolabs/lz-utilities​

npm i @layerzerolabs/lz-utilities

@layerzerolabs/lz-v2-utilities​

npm i @layerzerolabs/lz-v2-utilities

@layerzerolabs/protocol-devtools​

npm i @layerzerolabs/protocol-devtools

@layerzerolabs/sg-sdk​

npm i @layerzerolabs/sg-sdk

@layerzerolabs/solidity-bytes-utils​

npm i @layerzerolabs/solidity-bytes-utils

@layerzerolabs/solidity-examples​

npm i @layerzerolabs/solidity-examples

@layerzerolabs/test-devtools-evm-foundry​

Test helpers for foundry. Eg., you can use the OptionsHelper.sol contract to decode your options using foundry. You will also find the OptionsHelper.sol contract for reference in the contracts folder of the node module.

npm i @layerzerolabs/test-devtools-evm-foundry

@layerzerolabs/toolbox-foundry​

Toolbox for Foundry, tailored for LayerZero smart contract development.

npm i @layerzerolabs/toolbox-foundry

@layerzerolabs/toolbox-hardhat​

Toolbox for Hardhat, tailored for LayerZero smart contract development.

npm i @layerzerolabs/toolbox-hardhat

@layerzerolabs/typechain-hardhat​

npm i @layerzerolabs/typechain-hardhat

@layerzerolabs/ua-devtools​

npm i @layerzerolabs/ua-devtools

@layerzerolabs/ui-bridge-oft​

npm i @layerzerolabs/ui-bridge-oft

@layerzerolabs/ui-bridge-oft-wrapper​

npm i @layerzerolabs/ui-bridge-oft-wrapper

@layerzerolabs/ui-bridge-sdk​

npm i @layerzerolabs/ui-bridge-sdk

@layerzerolabs/ui-stargate-sdk​

npm i @layerzerolabs/ui-stargate-sdk

@layerzerolabs/ui-wallet​

npm i @layerzerolabs/ui-wallet

@layerzerolabs/ui-wallet-evm​

npm i @layerzerolabs/ui-wallet-evm

@layerzerolabs/verify-contract​

Verify source code on block explorers

npm i @layerzerolabs/verify-contract