Cross-chain ERC-721
Deploying the ERC721 NFT Contract on the Sender Chain
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract SampleERC721 is ERC721 ,Ownable{
using Counters for Counters.Counter;
Counters.Counter private _tokenIds;
string private _baseTokenURI;
constructor(string memory name, string memory symbol) ERC721(name, symbol) {}
function mint() public {
_safeMint(msg.sender, _tokenIds.current());
_tokenIds.increment();
}
function _baseURI() internal view virtual override returns (string memory) {
return _baseTokenURI;
}
function setBaseURI(string calldata baseURI) external onlyOwner{
_baseTokenURI = baseURI;
}
}Deploying the Mapping Contract on the Receiver Chain
Example:
Last updated