About the Project

Inspiration

The idea for MemePoll came from my interest in blockchain and how it can make everyday activities more engaging. I noticed that voting—whether for fun online polls or serious decisions—often feels boring or untrustworthy. With Electroneum’s fast and low-cost blockchain, I saw a chance to create a voting platform that’s both entertaining and rewarding. I wanted to build something simple yet impactful, blending memes and crypto to get people excited about Web3.

What I Learned

This was my first full Web3 project, so I learned a ton! I got hands-on with Solidity to write the smart contract, mastering events and structs for voting logic. Integrating it with React and ethers.js taught me how to connect frontend apps to blockchain networks. I also picked up Vercel for deployment and tackled debugging issues like transaction delays and UI glitches. It was a crash course in decentralized app development!

How I Built It

I started with the smart contract on Electroneum Testnet, coding in Solidity to handle topic creation, voting (1 ETN per vote), and automatic reward distribution (80% to winners). The contract lives at 0xe2b0C6326c9E6075Ad221A005686Ca220dE0A35a. For the frontend, I used React with Tailwind CSS for a clean UI, connecting it via ethers.js to the Testnet. Hardhat helped me compile and deploy the contract, while Vercel made hosting easy. The app fetches real-time vote data and history using contract calls and events.

Challenges I Faced

Building MemePoll wasn’t smooth sailing. One big hurdle was syncing the frontend with blockchain events—vote history didn’t update at first due to event filtering issues, which I fixed by tweaking queryFilter. Another challenge was Vercel’s access settings; I had to adjust permissions so others could test it. Debugging smart contract transactions (like ensuring 1 ETN payments worked) took time too. But each problem taught me something new about Web3 development and persistence!

Built With

  • electroneum
  • ether
  • ethers.js-(blockchain-integration)-**services**:-metamask-(wallet)
  • hardhat
  • javascript
  • react
  • solidity
  • solidity-**frameworks**:-react
  • tailwind-css-**platforms**:-electroneum-testnet
  • vercel-(hosting)-**tools**:-hardhat-(contract-development)
Share this project:

Updates