You can fund yourself or your cause by creating new proposals and people around the world can donate to you or your cause.
- A YouTube video of the application can be found here, in the video all the features are demonstrated.
To deploy this project
-
Firstly, clone the repository to your local machine
-
Folder structure should look something like this
-
Open the project in VS Code or simply open terminal and cd to the projects folder (CELO-CHARITY in this case).
-
Install the node modules using yarn in both the folders, using following commands
cd client
yarn install
cd..
cd contracts
yarn install
- After this your project is set up and you can run it by typing following commands in your terminal (assuming you are in parent directory, "CELO-CHARITY" in this case)
cd client
yarn run start
-
This should opwn your browser and run the react application on your localhost.
-
After that you should see something like this, on your browser
-
Contract Address
0x8132DB79Aed16929816789E396c48e7e299dd5e0
-
Now make sure you are on the Alfajores testnet and are connected to the network. Metamask should pop up as your website loads and will ask you to connect your account, you can select any of your account, with sufficient funds for the same.
-
The Metamask window pop up should look something like this
-
After you click on next you should be connected to you chosen account on Metamask with Alfajores test network.
-
This is the starting page of the application. Here you will find 4 sections:
- Raise : This is where you canmake proposals to raise money for them.
- Donate : This is where people can donate to your proposal, if you give them your proposal ID.
- Withdraw : This is where you can withdraw money that your proposal has raised.
- Search : This is where you can search the balance in any proposal, using its proposal ID.
-
To Make a proposal, simply put in the requested details in the fields and click on the create proposal button. Amount is where you can enter the amount you want to raise, Account address is where you put in your account address, where you want the funds to transferred to, Description is where you put in your cause, your need, anything you'd like to convey to the world and why they should donate you.
-
After you put in details it should look something like this.
-
After you click on the "Create Proposal" button, metamask should pop up and ask you to confirm the transaction.
-
Once you confirm the transaction, your proposal is created and now its ready to be funded/donated.
-
To fund any proposal simply scroll down to the donate section, or click on the donate tab in the navbar.
-
Something like this should show up and here you can enter the proposal ID you want to fund with the amount that you want to donate.
-
After you click on the "Donate" button, another metamask window should pop up and ask you confirm the transaction, as soon as you click on confirm, you have successfully donated to your desired proposal ID.
-
It should look like this
-
To Withdraw from your proposal, you can simply scroll down to the withdraw section or click on the withdraw tab on the navbar. Enter your Proposal ID, and make sure that you authorize the trasaction using the same account as you used to make the proposal.
-
On confirming the transaction, all the funds in your proposal should be transferred to your account.
-
To check the balance you can navigate to the search section and enter proposal ID
-
Before Withdrawal:
-
After Withdrawal:
-
All these transactions are happening on the CELO (Alfajores testnet). You can track the transactions using the block explorer of the same
-
After you search your account or check the contract using it's address, you should see something like this.
-
NOTE:
-
Make sure your accounts have sufficient funds to carry out the transactions, if not you can go to any alfajores faucet and fund your account with some test money (CELO).
-
The values of amounts are in CELO.
-
This is a developing project, so expect a lot of changes in the coming time. Right now it is only in its initial stages. We will be adding capabilities to upload pictures or videos to the description section to make your proposal more appealing to the masses, Along with that we are also in the process of adding authentication capability to check the legitimacy of proposals being created for fundraising. Along with that, we are constantly trying to bring changes to the application to better facilitate the user experience.
-