This is a decentralized crowdfunding application where users can create campaigns, donate to campaigns, and track the progress of fundraising campaigns using Ethereum smart contracts. The frontend is built using React with Vite, and the smart contract is written in Solidity.
Create Campaigns:
Users can create crowdfunding campaigns by providing details such as the title, description, target amount, deadline, and an image.Donate to Campaigns:
Users can contribute funds to any campaign by sending Ether.Track Donations:
The app tracks all donators and their donations, and the amount collected for each campaign.List Campaigns:
All campaigns are listed and viewable on the platform.
- React with Vite for fast development.
- Tailwind CSS for styling.
- Thirdweb & Ethers.js for interacting with the Ethereum blockchain.
- Solidity for the Ethereum smart contract.
- Hardhat for development and testing of the contract.
The smart contract (Crowdfunding.sol) manages the logic for creating and funding campaigns. Below are the main functionalities of the contract:
createCampaign:
Allows a user to create a new campaign by providing the campaign details.donateToCampaign:
Allows users to donate to an existing campaign by sending Ether.getDonators:
Returns the list of donators and their donations for a specific campaign.getCampaigns:
Retrieves all the campaigns created on the platform.
This project is licensed under the MIT License.
Feel free to fork this repository and contribute! All contributions are welcome.