Get a non-custodial bridge. Don't build cross-chain infra from scratch.
Your original asset stays canonical across every new chain.

IERC20(token).approve(address(omnisea), amount);
bytes memory recipient = abi.encodePacked(to);
uint256 fee = omnisea.quoteSendOriginalTo(
destinationEid,
token,
amount,
recipient,
isFirstTransfer,
noAction,
options
);
omnisea.sendOriginalTo{value: fee}(
destinationEid,
token,
amount,
recipient,
isFirstTransfer,
noAction,
options
);
Give holders a bridge, asset page and transfer explorer from day one.

const transfer = {
sourceChainId: 1,
destinationChainId: 8453,
token: "0x...",
amount: "100",
recipient: "0x...",
};
const quote = await omnisea.quoteTransfer(transfer);
console.log("Transfer fee:", quote.totalFee);
const result = await omnisea.executeTransfer(transfer);
console.log("Transfer sent:", result.hash);
For token teams
Don't build and manage the cross-chain infrastructure and interface yourself. Focus on growing your asset.