Cross-chain messaging & NFT transfers on Kadena EVM — bridging data and assets 🚀
chain id-5920 nft mint-https://chain-20.evm-testnet-blockscout.chainweb.com/tx/0xd8a49f808c5e9d750c7740b0c0104092af7506faa2e7317baecbca1fd63624a7 nft send -https://chain-20.evm-testnet-blockscout.chainweb.com/tx/0xd8a49f808c5e9d750c7740b0c0104092af7506faa2e7317baecbca1fd63624a7 nft receive-https://chain-21.evm-testnet-blockscout.chainweb.com/tx/0xbe6486628ed8fe3207e4d782947ddab5d2aaaab8deee7c06f709cc028691c754
This project is a system that lets different Kadena EVM chains talk to each other. It works in two ways: moving NFTs and sending any kind of message across chains. For NFTs, you can mint one on a chain, burn it, and have it show up on another chain with the same details, proving that the transfer really happened. For messages, it can carry any kind of data—like settings, payments, or game items—between chains. The setup is designed to be simple and reusable: we made ready-to-use contracts for sending and receiving, so apps, wallets, or marketplaces can plug it in without much effort. By building on Kadena’s secure multi-chain system with EVM support, the project shows how cross-chain tools can be both practical and easy for developers to build with.
We built this project on Kadena’s new EVM chains using Solidity, the same language used on Ethereum. The system has two main parts: one for sending and receiving normal messages, and another for sending NFTs across chains. When you send an NFT, it gets burned (deleted) on the first chain and then recreated on the second chain with the same metadata so it feels like it has moved.
The key part that makes this work is a small relayer program we wrote. Its job is to watch for events on one chain (like when an NFT is burned) and then trigger the right action on the other chain (like minting it again). This way, the two chains stay in sync without needing a complex setup.
For building and testing, we used Foundry (forge and cast) to deploy and interact with contracts, plus some simple bash scripts to deploy across two chains and try out the transfers step by step. A lot of the project came down to gluing things together: parsing logs, wiring them into the relayer, and making sure the NFT metadata carried across correctly. It’s a lightweight but working demo that shows cross-chain messaging and NFT transfers on Kadena in action.

