Inspiration

While cities spend millions on sanitation, everyday litter often goes unnoticed. We were inspired to build a solution that directly incentivizes citizens to take action. By combining Web3 and community trust, we wanted to create a decentralized system where people are rewarded for cleaning public spaces — without relying on centralized authorities.


What it does

CleanChain-V2 is a decentralized application (dApp) that verifies and rewards real-world cleanups using a community-driven voting system and on-chain token incentives. Users upload geotagged “before” and “after” photos of cleaned areas. Other users then vote to validate the effort. Once a threshold is met, the cleanup is verified and rewarded with ECO tokens via smart contract. The system includes:

  • Wallet-based authentication (Metamask)
  • Geolocation + photo uploads
  • Voting system for verification
  • ERC-20 token rewards
  • Admin dashboard & user profiles

How we built it

We used a full-stack Web3 architecture:

  • Frontend: React (Vite) + TailwindCSS for UI
  • Backend: Node.js + Express.js for API routing
  • Database: Firebase Firestore for user/location/vote storage
  • Blockchain: Solidity smart contracts deployed using Hardhat
  • Wallet integration: Ethers.js for blockchain interaction
  • Smart Contract: Custom ERC-20 ECO token with reward transfer logic

We followed a modular folder structure with routes for auth, voting, uploads, and smart contract interaction.


Challenges we ran into

  • Designing a trustless verification mechanism without oracles or AI
  • Preventing abuse (e.g., self-voting or duplicate cleanups)
  • Getting Firebase and smart contract logic to sync without race conditions
  • Managing environment variables securely for backend deployment
  • Time constraints in building an entire reward flow from scratch (upload → vote → token transfer)

Accomplishments that we're proud of

  • Built and deployed a working token economy with real-time reward flow
  • Created a clean and intuitive UI for wallet-based interactions
  • Integrated Web2 (Firebase) and Web3 (Solidity) smoothly
  • Designed a project that solves a real-world sustainability problem
  • Learned how to make something that feels like a real Web3 product, not just a demo

What we learned

  • Deepened our understanding of smart contract development and deployment
  • How to build secure Web3 APIs while managing off-chain data
  • Balancing decentralization with usability — especially in voting and validation mechanisms
  • The importance of thoughtful UX in Web3 projects
  • How to debug complex systems with multiple moving parts (DB, wallet, blockchain)

What's next for CleanChain

  • Add on-chain voting using ZK proofs or token-weighted governance
  • Expand to mobile (React Native or Expo) for easy field reporting
  • Gamify the system: leaderboards, streaks, NFT badges
  • Partner with local NGOs or municipalities to run real-world pilot programs
  • Enable token redemption for eco products or event access
  • Build a DAO to manage ecosystem governance and sustainability

Built With

Share this project:

Updates