Challenge: Build a simple decentralized voting application using React.js with a smart contract already done
Description: Your task is to build a simple decentralized voting application that allows users to cast their votes without the need for a central authority. A smart contract has already been created and deployed on a testnet. You will need to integrate this smart contract into your application and build the frontend and backend components.
Requirements:
- The application should be built using React.js for the frontend. (done)
- The smart contract has already been created and deployed on sepolia network. You will need to integrate this contract into your application. Had problems with sepolia - seems fees are too height. Works on local.
- Users should be able to connect their wallets (MetaMask, for example) to the platform to cast their votes. (done)
- The application should display real-time voting results, including the number of votes for each candidate. (events + useEffect)
- The application should have a dashboard for users to view their voting history and account balances. (done)
Bonus:
-
Add support for multiple voting rounds. (done)
-
Add listener function that saves the vote, wallet and selected candidate to a database (can be a backend implementation, firebase or lowdb)
Note: you need to change the smart contract to add Events
Note: You are free to use any libraries or frameworks you see fit to complete the challenge.
Smart Contract deployed on sepolia network 0x9298B2E081E7F604028d75dF5d15155353612d4c