Skip to content

MrBuluc/Kickstarter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kickstarter Smart Contract Project

Welcome to the Kickstarter Smart Contract project repository! This project aims to address the issue of Kickstarter scams by utilizing Blockchain smart contracts to ensure transparency and security in crowdfunding campaigns. The smart contract is built on the Ethereum platform, providing a decentralized and trustless environment for backers and campaign owners.

Table of Contents

Overview

Kickstarter scams have been a concern in crowdfunding platforms where campaign owners receive funds and disappear. This project addresses this issue by implementing a smart contract on the Ethereum blockchain. The smart contract manages campaigns, tracks contributions, and handles requests through a transparent and decentralized process.

Features

  • Smart Contract Security: Utilizes Ethereum smart contracts to manage campaigns securely on the blockchain.
  • Contribution System: Backers can contribute to campaigns in wei, ensuring a reliable and transparent funding process.
  • Request Approval Mechanism: Campaign owners can create requests, and backers can approve or disapprove them. A request is finalized only if the approval count surpasses the disapproval count.
  • Campaign Management: Users can create new campaigns with a specified minimum contribution in wei.

Getting Started

To get started with the Kickstarter Smart Contract project, follow these steps:

  1. Clone the repository: git clone https://github.com/MrBuluc/Kickstarter.git
  2. Install dependencies: npm install
  3. Run the React project: npm run dev
  4. Connect to a compatible Ethereum wallet such as MetaMask.

Project Structure

The project is structured as follows:

  • ethereum/: Contains the Ethereum smart contract code.
  • pages/: React project files for the front-end.

How It Works

The smart contract manages campaigns, contributions, and requests. Backers can contribute, and campaign owners can create requests. A request is finalized only if the approval count exceeds the disapproval count.

Request Approval Mechanism

One of the key features of the Kickstarter Smart Contract project is the weighted approval and disapproval system, where contributor support values influence the decision-making process.

How It Works

  1. Contributions and Contributor Support Value:

    • Backers contribute to the campaign with a specific amount in wei.
    • Each contributor's support value is determined by the amount they contributed.
  2. Request Creation:

    • Campaign owners can create requests for specific actions, such as fund transfers or project-related tasks.
  3. Approval and Disapproval:

    • Contributors can approve or disapprove requests based on their interest in the campaign.
    • The approval and disapproval counts are weighted by the contributor's support value.
  4. Weighted Decision-Making:

    • The smart contract calculates the overall approval and disapproval percentages, taking into account the contributor support values.
    • Weighted percentages contribute to the decision-making process, making it fairer and more reflective of the backers' financial commitment.
  5. Finalization:

    • A request is only finalized if the weighted approval count surpasses the weighted disapproval count.
    • This ensures that decisions are influenced not just by the number of contributors but by the financial support they have provided.

Why Weighted Approval and Disapproval?

The weighted approval and disapproval system aim to prioritize contributors with higher financial support, aligning decision-making with the level of commitment from backers. This approach helps prevent manipulation of the voting process and ensures that decisions are made in the best interest of those who have contributed more significantly to the campaign.

By incorporating this weighted system, the Kickstarter Smart Contract project enhances transparency and fairness in the campaign approval process, making it more resistant to potential abuse or manipulation.

Campaign Detail Page

On the Campaign Detail Page, users can view essential information about a campaign, including manager address, minimum contribution, number of requests, number of approvers, and campaign balance in ether. Users can also contribute to the campaign and view the existing requests.

Requests Page

The Requests Page displays a table of campaign requests with details such as ID, description, amount in ether, recipient address, approval and disapproval percentages, vote rate, and buttons for approval, disapproval, and finalization.

Campaign owners can add new requests with descriptions, values in ether, and recipient addresses.

Contribute

Contributions to this project are welcome! Feel free to open issues, submit pull requests, or provide feedback.

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published