0% found this document useful (0 votes)
68 views3 pages

Blockchain Project Report

Uploaded by

zohaibnaseem351
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
68 views3 pages

Blockchain Project Report

Uploaded by

zohaibnaseem351
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Blockchain based Crowdfunding

Rana Zohaib Naseem (BCS203084)


Raja Tayyab Nawaz (BCS203097)
Mudassar Ali (BCS203146)

Subject: Blockchain

Spring - 2024
Submitted to
Sir Fahim Shahzad

Department of Computer Science


Capital University of Science & Technology, Islamabad

1
Introduction
We developed a blockchain-based crowdfunding application where users can create campaigns
for their projects, and those who wish to donate or fund these projects can do so seamlessly.
This application leverages the decentralized and transparent nature of blockchain technology to
ensure secure and reliable transactions. The core idea is to provide a platform where project
creators can raise funds, and donors can contribute with confidence, knowing that their
transactions are secure and transparent.

Tools and Technologies Used


To build this application, we utilized a variety of tools and technologies:

Solidity: Used for writing the smart contracts that power the application.
Thirdweb: A platform to deploy our smart contracts, which simplifies the deployment
process.
Hardhat: A development environment to compile and link the smart contracts with the
blockchain.
Visual Studio Code (VS Code): The Integrated Development Environment (IDE) used for
writing and managing the code.
MetaMask: A cryptocurrency wallet used for managing accounts and confirming transactions.
Node.js and npm: Installed initially to set up the development environment and manage
dependencies.

Project Flow
The project development followed these steps:
Setting Up the Environment:
We started by installing Node.js and npm to set up our development environment.
Created a new Thirdweb project and installed Hardhat to compile our Solidity smart contract.

Writing and Deploying Smart Contract:


Using Solidity, we wrote the smart contract that define the logic of creating and managing
crowdfunding campaigns.
We deployed these smart contracts on the Thirdweb platform. The deployment was done by
running the deploy command, which generated a link to the Thirdweb dashboard.

2
Integrating MetaMask:
We created a MetaMask wallet and used a test network for development and testing.
The MetaMask wallet was linked to our project by writing the private key in the .env file.
Once MetaMask was connected, users could create campaigns and confirm transactions
directly through Thirdweb dashbord.

Testing the Application:


For testing purposes, we used dummy ethers provided by the test network.
We created two MetaMask accounts to simulate the roles of the campaign creator and the
donor.
Users could create a campaign by confirming the transaction in MetaMask. Upon successful
transaction confirmation, the receipt was visible in MetaMask.
Similarly, users could donate to campaigns by filling out the necessary information and
confirming the transaction in MetaMask.

User Interaction
The user interaction in our application is straightforward and user-friendly:

Creating a Campaign:
The user connects their MetaMask wallet to the application.
They fill in the campaign details and execute the creation command.
MetaMask prompts the user to confirm the transaction.
Upon confirmation, the campaign is created, and the transaction receipt is available in
MetaMask.

Donating to a Campaign:
The user selects a campaign they wish to fund. Here, the getcompaigns function executed.
They fill in the donation amount and execute the donation command.
MetaMask prompts the user to confirm the transaction.
Upon confirmation, the donation is made, and the transaction receipt is available in MetaMask.

Conclusion
Our blockchain-based crowdfunding application provides a secure and transparent platform for
raising and donating funds. By leveraging blockchain technology, we ensure that all transactions
are immutable and transparent, instilling confidence in both project creators and donors.
MetaMask makes it easy for users to manage their transactions. This project demonstrates the
potential of blockchain technology in creating reliable and efficient crowdfunding solutions.

You might also like