Mint unique, non-fungible tokens (NFTs) with ClubFOMO's DApp on the Ethereum blockchain. For a client, I developed this project featuring a singular NFT that fetched a sale price of 13.85ETH, amounting to $25,000 at the time of minting.
- Front-end: ReactJS
- Smart Contract Language: Solidity
- Blockchain: Ethereum Mainnet
- Testing: Foundry
ClubFOMOVIP
is an ERC721 token representing Club FOMO's Legendary VIP collection. It leverages OpenZeppelin's library for solidity standards, ensuring security and efficiency.
- Limited Supply: A maximum supply of tokens that can be minted, ensuring exclusivity.
- Price: Set token price for minting.
- Metadata Extensions: Enable detailed metadata association with NFTs.
- Reveal Mechanism: Facilitates revealing the NFT metadata after a certain event.
- Payment Splitter: Allows for funds to be split amongst several accounts.
mint(uint256 _quantity)
: Allows users to mint NFTs.tokenURI(uint _nftId)
: Retrieve the URI of a specific NFT.setNotRevealURI(string memory _notRevealedURI)
: Set the unrevealed URI.setBaseExtension(string memory _baseExtension)
: Modify the base extension of the metadata files.setBaseURI(string memory _newBaseURI)
: Change the base URI.setMaxSupply(uint256 _maxSupply)
: Adjust the max supply of NFTs._baseURI()
: Return the current base URI.reveal()
: Toggle to reveal NFT metadata.releaseAll()
: Release funds to the specified accounts.
View ClubFOMO Smart Contract on Ethereum Mainnet
- Clone the Repository:
git clone <repository-url>
- Install Dependencies:
npm install
- Start the DApp:
npm start
Follow the instructions to install Foundry.
Clone and install dependencies:git submodule update --init --recursive
Test Contract: forge test --contracts ./src/test/ClubFomoTest.t.sol -vvvv
Visit http://localhost:3000/
to interact with the decentralizd application.