Emoji Store is a decentralized NFT marketplace built on Ethereum. It allows users to list and purchase emojis as NFTs. These emojis are unique digital assets securely traded on the blockchain.
-
List Emojis as NFTs: Users can provide emojis, descriptions, and prices to list them as NFTs.
-
Buy NFTs: Browse all listed NFTs and purchase them using cryptocurrency (ETH).
-
Secure Blockchain Transactions: Transactions are handled using smart contracts to ensure transparency and security.
-
Dynamic Updates: Instantly displays the owner and price of each NFT.
- React
- Next.js
- TailwindCSS: For a visually appealing UI.
- wagmi: To interact with the Ethereum blockchain.
- ethers.js: To manage smart contracts and Ethereum transactions.
- Solidity: For writing smart contracts.
- Sepolia Testnet: Deployed on Ethereum's test network.
addEmoji
: List a new emoji as an NFT.purchaseEmoji
: Purchase a specific emoji NFT.getEmojiCount
: Retrieve the total number of listed NFTs.getEmoji
: Query details of a specific emoji NFT.
- Sepolia Testnet:
0xFC059Fe6e1ee844E02143Cac536aD994b638c547
You can view the contract activity on Sepolia Etherscan.
git clone https://github.com/viiccwen/emoji-store.git
cd emoji-store
bun install # make sure you have bun
bun run dev
Open http://localhost:{server port} in your browser.
If you need to redeploy the smart contracts:
- Install Truffle or Hardhat.
- Use
bunx hardhat deploy
to deploy the contract.
- Click the
List
button. - Enter the emoji, description, and price.
- Submit the transaction to list it as an NFT.
- Browse available NFTs.
- Click the
Purchase
button and confirm the transaction. - Once completed, the NFT ownership will update to you.
- Support for secondary markets (reselling functionality).
- Add support for more blockchain networks (e.g., Polygon).
- Provide transaction history for each NFT.
We welcome issues and PRs to improve this project!
- Fork this repository.
- Create a branch:
git checkout -b feat:{feature-name}
. - Commit your changes:
git commit -m 'Add some feature'
. - Push the branch:
git push origin feat:{feature-name}
. - Open a PR.
This project is licensed under the MIT License.
Start using Emoji Store and experience the power of blockchain-based NFT marketplaces! 🥳🚀🔥