The objective of this project is to develop a secure and user-friendly NFT marketplace where users can seamlessly buy, sell, browse, and create NFTs listed on a blockchain smart contract. A critical focus of the project is implementing robust mechanisms to prevent spam and bot activity, ensuring a safe and fair trading environment for genuine users. By addressing this challenge, the project fosters an authentic and trusted community for artists, collectors, and enthusiasts to engage in NFT transactions.
- Buy, Sell, and Browse NFTs: Users can explore and trade NFTs listed on the marketplace.
- Create NFTs: Artists and creators can mint and list their NFTs on the blockchain.
- Spam and Bot Prevention: A security mechanism is integrated to prevent unauthorized access and ensure a fair marketplace.
- Blockchain Integration: Smart contracts are deployed to handle NFT transactions, ensuring transparency and security.
- User Authentication: Secure login and registration system using JWT (JsonWebToken) and bcryptJS for password encryption.
- Real-time Updates: The marketplace provides live updates using Socket.io for seamless user interaction.
- ReactJS: Building dynamic and responsive user interfaces.
- Axios: Handling API requests for seamless interaction with backend services.
- Redux: State management for predictable UI behavior.
- React-QR-Code: Generating QR codes for user verification.
- Lottie: For animations and enhanced user experience.
- Bootstrap 5: Responsive design and prebuilt UI components.
- React-Router-Dom: For navigation and routing within the app.
- NodeJS: Backend server and API development.
- Express: Web framework for handling server-side logic.
- Mongoose: Object Data Modeling (ODM) library for MongoDB.
- Socket.io: Real-time communication between users and the server.
- BcryptJS: Password hashing for secure user authentication.
- Cors: Handling cross-origin requests.
- JsonWebToken (JWT): Token-based user authentication.
- Solidity: Smart contract development for managing NFT transactions.
- OpenZeppelin: Secure smart contract library for NFTs.
- Ethers.js: Interacting with Ethereum blockchain and smart contracts.
- Hardhat: Ethereum development environment and testing framework.
- Alchemy: Blockchain API for interacting with the Ethereum network.
- PolygonID Verifier SDK (iden3js): Verifying user identities and preventing spam.
- Solidity: Smart contract development for NFTs.
- Zero-Knowledge Proof Language: Used for identity verification.
- JavaScript: Core language for both backend and frontend logic.
- HTML/CSS: Structuring and styling the user interface.