This is a decentralised application created in React for Crowd Funding of Web3 Projects. In this app anyone can create crowd funding campaigns and collect fund in ETHEREUM with complete transparency and security.
App Frontend is in ReactJS
and contracts are written in solidity
and tested with hardhat
. IPFS
(InterPlanetary File System) is used to store the campaign meta data. For fast client side data fetching ipfs cid of campaigns are storted in Supabase
This project is created for Alchemy Ethereum bootcamp.
project.mp4
Contracts are deployed in Sepolia Testnet at: 0xA840114c4c7B1f8aaF19c5f6e005A89F8853262a
✔️ Create Crowd Funding Camapaigns
✔️ Collect Fund in ETH from donors
✔️ Edit Campaign Metadata
✔️ See withdrawal History
- Clone this project,
cd
into project root directory pnpm install
to download all the project dependencies.- Create an empty
.env
file in root directory. - Run
pnpm run dev
to start the app
VITE_RPC_URL=
VITE_CONTRACT_ADDRESS=
VITE_PINATA_JWT=
VITE_IPFS_GATEWAY=
VITE_SUPABASE_PROJECT=
VITE_SUPABASE_ANON_KEY=
You can use hardhat node
to test the dapp locally. Hardhat and contracts are present in fork
directory.
- Uncomment the hardhat network at
src\config\modalNetworks.js
- Add hardhat to Browser Wallet.
- Insytall dependencies
cd fork && pnpm install
- Start local testnet using
npx hardhat node
- Update
.env
- Use
fork/scripts
for deployment and testing
Never put sensitive piece of data in client side. If we were
building an enterprise app to conquer the world we would never place
this sensitive data in the client code of our blockexplorer project that
could potentially be read by anyone.