Inspiration
Traditional charity systems often lack transparency. Donors rarely know where their money is going, how it is being used, or whether funds are being mismanaged. This gap in trust inspired me to build a fully transparent, decentralized charity platform, where every donation and spending decision is visible and governed by the community instead of a centralized authority.
What it does
Charity Fund Donation is a blockchain-powered platform that allows:
Anyone to donate ETH securely.
Donors to create spending proposals (e.g., support someone in need). The community to vote on which proposals should be funded. Funds to be automatically released through the smart contract once a proposal is approved. Full transparency, since all transactions and decisions are recorded on-chain. It creates a trustless environment where donors can see exactly how their contributions are used.
How we built it
We built the project as a complete Web3 system: Smart Contract (Solidity + Hardhat) Manages donations, proposals, voting, and fund execution Emits events for transparency Deployed on a local Hardhat blockchain
Backend (Node.js + Express) Optional layer used to deploy the smart contract Provides clean APIs to interact with the contract Manages ABI + contract address for the frontend
Frontend (React + Vite + Ethers.js) User interface to donate, vote, and create proposals Connects to MetaMask Reads contract state and writes transactions Modern, clean UI for a smooth user experience This full-stack approach ensures that both decentralization and usability come together.
Challenges we ran into
MetaMask connection issues and chain ID mismatches Hardhat node shutting down and resetting fake balances Contract not loading due to ABI/address mismatches Ethers.js v6 syntax changes Fixing CORS and backend connection problems Frontend UI rendering issues during development Debugging failed transactions and RPC errors Each challenge helped us better understand how Web3 systems behave in real time.
Accomplishments that we're proud of
Successfully built a fully functional blockchain charity system from scratch Achieved transparent governance with donation-based voting Built a clean UI that interacts seamlessly with the smart contract Connected the backend, frontend, and blockchain into one working product Overcame multiple technical hurdles with MetaMask, Hardhat, and Ethers.j Being able to turn the idea into a real working decentralized app is the biggest accomplishment.
What we learned
How to write and deploy Solidity contracts How blockchain voting and governance work Using Hardhat for local blockchain development Integrating MetaMask into a React app Managing contract ABI & address updates Debugging blockchain transactions Understanding full-stack Web3 architecture This project deepened our practical understanding of decentralized systems.
What's next for Charity Fund Donation
Deploying to a real testnet (Sepolia/Polygon) Adding a dashboard to track donation history Using IPFS for proposal descriptions Implementing DAO-style weighted voting Adding recurring donations and milestones Email or in-app notifications for proposal updates Expanding the system into a community-governed DAO The long-term vision is to turn this into a fully decentralized global charity platform.
Built With
- blockchain
- css
- ethers.js
- express.js
- hardhat
- html
- javascript
- json
- local
- metamask
- node.js
- react
- solidity
- tailwindcss
- vite
Log in or sign up for Devpost to join the conversation.