FundFair is a Web3-powered crowdfunding platform that enables campaign creators to raise funds transparently while allowing contributors to participate in governance through smart contract-based voting. Built with React, Solidity, Node.js, and integrated with MetaMask, FundFair is modular, easy to use, and developer-friendly.
- ✅ Wallet-based authentication (MetaMask)
- ✅ Decentralized campaign creation and fund contribution
- ✅ Smart contract-based voting for withdrawal approvals
- ✅ Real-time transaction logging and analytics
- ✅ Modular frontend and backend architecture
- ✅ Etherscan and Thirdweb integration for contract tracking
Ensure your system has the following:
- OS: Windows 10/11, macOS, or modern Linux
- Node.js: Version 16 or higher
- Git: Version control
- Browser: Chrome, Firefox, or Edge
- MetaMask: Browser wallet extension
- Code Editor: Recommended: Visual Studio Code
Optional:
- MongoDB Atlas (for remote DB config)
- Hardhat CLI (
npm install --save-dev hardhat
)
git clone https://github.com/kyme19/Cf3.git
cd Cf3
Or, if installed locally from a ZIP:
cd Cf3
In two terminals, install frontend and smart contract dependencies:
Client:
cd Cf3/client
npm install
# or
yarn install
Blockchain Logic:
cd Cf3/web3
npm install
# or
yarn install
Start the development server:
cd Cf3/client
npm start
# or
npm run dev
Open http://localhost:5173
Make sure MetaMask is connected and set to Sepolia Testnet
- Log in with MetaMask
- Launch a new campaign with title, description, and funding goal
- Submit withdrawal requests for received funds
- Track campaign stats via dashboard
- Browse live campaigns
- Contribute ETH securely to a project
- Vote to approve or reject withdrawal requests
- View contribution history and transaction status
Dashboards show real-time statistics, contribution trends, and campaign progress using dynamic charts.
To deploy or test with your own keys:
- Go to: thirdweb dashboard
- Create a project and generate a Client ID and Secret Key
- Visit: etherscan.io
- Register and create a new key from your dashboard
REACT_APP_THIRDWEB_API_KEY=your_key_here
REACT_APP_THIRDWEB_SECRET_KEY=your_secret_here
REACT_APP_ETHERSCAN_API_KEY=your_etherscan_key_here
To redeploy your contracts using Thirdweb:
npm install -g thirdweb
cd Cf3/web3
npx thirdweb deploy
Follow the prompts to deploy on your preferred network (e.g., Sepolia or Polygon Mumbai).
Want to improve FundFair?
Feel free to fork the repo, open an issue, or submit a pull request. Contributions are welcome!
This project is open-source and licensed under the MIT License.
Built by @kyme19 as a final year project submission.
Big shoutout to the Web3 and open-source community for inspiration!
Live. Decentralized. Transparent. Welcome to FundFair. 💰