A project for cross chain communication contract. It offers multicall functionality for interacting with many chains in one transaction.
- Copy
.env.example
to.env
cp .env.example .env
- Fill in
PRIVATE_KEY
value in.env
file - Install dependencies
npm i
- Compile contracts
npm run compile
- Deploy an LzSuperCall contract
npx hardhat run script/deployLzSuperCall.ts --network <network>
- Deploy a Logger contract
npx hardhat run script/deployLogger.ts --network <network>
- Send cross chain transaction
npx hardhat run script/callLogger.ts --network <network>
- Deploy supercall npx hardhat run scripts/deployLzSuperCall.ts --network fuji npx hardhat run scripts/deployLzSuperCall.ts --network fantom-testnet
- Set trusted remote npx hardhat run scripts/setTrustedRemote.ts --network fuji npx hardhat run scripts/setTrustedRemote.ts --network fantom-testnet
- Call logger from on chain to another chain npx hardhat run scripts/callLogger.ts --network fuji
- Check log value on the destination chain px hardhat run scripts/getLogValue.ts --network fantom-testnet