ZetaChain Toolkit
This repository contains a collection of helper contracts, Hardhat tasks, and utility functions that make it easier to build with ZetaChain.
Building a dApp on ZetaChain
If you're looking to build a dapp on ZetaChain, we recommend checking out the tutorials section (opens in a new tab) in ZetaChain docs.
Prerequisites
Before getting started, ensure that you have Node.js (opens in a new tab) and Yarn (opens in a new tab) installed on your system.
Installation
To install this package in Hardhat project, add it as a development dependency:
yarn add --dev @zetachain/toolkit
Installing tasks
To install all the the tasks into a Hardhat template, add the following import
statement to hardhat.config.js
:
import "@zetachain/toolkit/tasks";
Importing Helper Functions
import {
deployZetaConnectorMock,
deployZetaEthMock,
prepareData,
prepareParams,
evmSetup,
} from "@zetachain/toolkit/helpers";
Importing Helper Contracts
pragma solidity 0.8.7;
import "@zetachain/toolkit/contracts/BytesHelperLib.sol";
import "@zetachain/toolkit/contracts/TestSystemContract.sol";
import "@zetachain/toolkit/contracts/TestZRC20.sol";
import "@zetachain/toolkit/contracts/SwapHelperLib.sol";
import "@zetachain/toolkit/contracts/ZetaConnectorMock.sol";
import "@zetachain/toolkit/contracts/EthZetaMock.sol";
Contributing to the Project
To get started, install the necessary dependencies by running the following command in your terminal:
yarn
yarn build
Enumerations
Classes
Interfaces
Type Aliases
Functions
- encodeToBytes
- evmCall
- evmDeposit
- evmDepositAndCall
- getBalances
- getChainId
- getEndpoint
- getFees
- getForeignCoins
- getHardhatConfig
- getPools
- getQuote
- getRefundFee
- getSupportedChains
- getWithdrawFeeInInputToken
- getZRC20FromERC20
- getZRC20GasToken
- prepareData
- prepareParams
- sendZeta
- solanaDeposit
- solanaDepositAndCall
- trackCCTX
- zetachainCall
- zetachainWithdraw
- zetachainWithdrawAndCall