Created using OpenZeppelin's ERC721 and its extensions Smart Contracts.
- Mint
- Whitelist Mint - Using Merkle Root
- Reveal
- Free mint for owner
- Pause/Unpause
- Set Price
- Set URIs
- Set maximum mint per transaction
- Withdraw funds after sale
- Compatible with any NFT Marketplace
- Python
- Brownie
python3 -m pip install --user pipx
python3 -m pipx ensurepath
# restart terminal
pipx install eth-brownie
- A free Infura Project Id key for Rinkeby Network
Clone this repo:
git clone https://github.com/andreitoma8/ERC721-Collection
cd ERC721-Collection
-
Add a
.env
file with the same contents of.env.example
, but replaced with your variables. -
In
scripts/deploy.py
change the value ofNAME
,SYMBOL
,COST
,MAX_SUPPLY
andMAX_MINT_AMOUNT_PER_TX
to custom ones for your Collection. -
Run the command:
brownie run scripts/deploy.py --network rinkeby
The script will deploy your Smart Contract and verify it on Etherscan.
To deploy to any other network change rinkeby in the command with the name of the network:
brownie run scripts/deploy.py --network [network name]
and your WEB3_INFURA_PROJECT_ID
in the .env
file with a Project Id for that network.
More info on how to set-up the Merkle Root whitelisting here.
0xA4Ad17ef801Fa4bD44b758E5Ae8B2169f59B666F