Kickstarter Project

Contract purpose

Contract modeled on the Kickstarter example. A manager user can create a campaign and, as other users keep contributing, the manager creates requests on how the money will be spent. The requests must be approved by a majority of contributors in order to pass through.


minimum: sets the minimum contribution for the campaign

Exposed methods

manager: creator of the campaign

minimumContribution: the minimum contribution set for this campaign

requests: called with the requestIndex as a parameter, it returns the details of that request

approversCount: return the number of the users who donated to the campaign

getDeployedCampaigns gets a list of the addresses of the deployed campaigns

createCampaign allows a user to create a new campaign

parameter nametypedetails
minimumintegerthe minimum contribution for this campaign

contribute allows a user to donate to a campaign and become an approver - he has to send an amount >= minimum contribution for that campaign

createRequest can only be called by the campaign manager and allows him to create a spending request to a certain provider (not himself)

parameter nametypedetails
descriptionstringdescribes the purpose of the spending request
valueintegerthe spending amount
addressethereum addressaddress of the recipient

approveRequest can be called only once by a contributor to the campaign

parameter nametypedetails
indexintegerthe index of the request which is going to be approved

finalizeRequest called by the manager and successfully executed if the request was approved by more than 50% of the contributors

parameter nametypedetails
indexintegerthe index of the request which is going to be completed
Reviewed by Modex
Buy Contract Test Contract

Create an account or login to purchase this smart contract