Skip to main content

ERC1155SignatureMintable

ERC1155SignatureMint enables signature-based minting of NFTs in your smart contract.

Base Contracts Implementing This Feature

Unlocked Features

By implementing the ERC1155SignatureMint contract, you unlock the following features in the SDK and dashboard:

SDK UsageDescription
Signature-Based MintingGenerate signatures that allow other wallets can use to mint NFTs into your collection.

Implementing It Yourself

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@thirdweb-dev/contracts/eip/ERC1155.sol";
import "@thirdweb-dev/contracts/extension/SignatureMintERC1155.sol";

contract Contract is ERC1155, SignatureMintERC1155 {
constructor(
string memory _name,
string memory _symbol
)
ERC1155(
_name,
_symbol
)
{}

function _canSignMintRequest(address _signer) internal view virtual override returns (bool) {
// Your custom implementation here
}

function mintWithSignature(MintRequest calldata req, bytes calldata signature)
external
payable
override
returns (address signer) {
// Your custom implementation here

}
}