About The Site

What is CrowdFund3r?

CrowdFund3r is a web3 crowdfunding site built upon the ethereum blockchain. It allows people in need of money to leverage web3 technology to get assistance from well meaning members of the public while protecting the interest of the donors by granting them the opportunity to retract their donations should they be provided with new information that makes them want to. The website is controlled at the backend by a CrowdFunder contract. The site was built with NextJS and Solidity. As the site is still in testing, it is only available on select chains( Rinkeby,Goerli).

What is a Cause?

A Cause is a unit of the site that allows a user receive donations and other users to make donations to them. Each cause is a product of a Cause contract. Every cause has a unique numerical ID as well as a hexadecimal (starts with "0x") address. You can search for a cause using either its ID, contract address or the address of the ethereum wallet used to create it in either the search page or the search bar of the "causes" page(can be reached via dropdown menu at the top left).
A typical cause page

Searches

As stated above, the search bars in the home page and the causes can find a cause based on the ID(Numerical Integer such as "1"), cause contract address(hexadecimal beginning with 0x) and cause owner wallet address(hexadecimal beginning with 0x). Attempts to search based on the Cause name or keywords will produce no results.
Search Page
Causes Page

Donations

Donations are made in ETH (the native token of the Ethereum network). Donations to a cause are stored in the contract of the cause and can only be withdrawn by the owner of the cause. Donations are automatically disabled when the goal of the cause is reached or exceeded. You can make donations to a cause by using the donation module in the cause page or by directly transferring ethereum to the cause contract. DO NOT SEND ERC20 TOKENS, NFTs OR NON-ETHEREUM TOKENS TO THE CAUSE ADDRESS. THEY WILL BE LOST. YOU CAN SEND NFTs AND NON-ETHEREUM TOKENS ON THE ETHEREUM NETWORK TO THE CAUSE OWNER ADDRESS. BOTH THE CAUSE ADDRESS AND CAUSE OWNER ADDRESS ARE ON THE CAUSE PAGE.

Withdrawal

The owner of a cause can withdraw donations made to his cause at any time irrespective of how much has been donated at the time of withdrawal. 3% of donated funds return to the CrowdFunder contract for the maintenance of the site. Donations can no longer be made after withdrawal.

Refunds

Donors to a cause can ask for refunds and get them immediately by clicking the "Demand Refund" button in a cause page. You can still make a donation after getting a refund but you cannot get a refund after the owner of the cause has withdrawn donations.

Closing/Opening to Donations

The Cause Owner can choose to close his cause to donations. Donors will be unable to make contributions while it is in that state. This is different from locking/unlocking of causes.

Locking/Unlocking of causes

The site admin can choose to lock/unlock a cause if reports of fraudulence are made. While in this state, donations cannot be made to such a cause and the cause owner will be unable to withdraw the funds in the cause. Donors who already made donations will be able to get refunds. PS: The site admin cannot withdraw the funds in any of the causes. Only the cause owners and donors are able to withdraw money or get refunds respectively from the cause. This is different from Closing/Opening causes to donation
You can show contribute to the maintenance of the site or show appreciation to the developer(Just one for now) by making a donation via the sponsor page.

Sharing

You can share the link using the share modal on the right side bar of the cause page. The modal provides the options of sharing via a tweet, a facebook post, Email, downloading a QR code that links to the cause or copying the link to clipboard.
About The Developer
Akinboboye Akinwande is a self taught developer who believes in innovation. He is a graduate of the University of Lagos where he taught himself to code while pursuing his BSc in Electrical/Electronics Engineering which he obtained in 2021 with second class upper honours. He has built several personal projects in the past using HTML, CSS and Vanilla Javascript in the past. This is his first foray into web3/blockchain development. He got interested in Web3 technology in February 2022 and has been fascinated by the several potential applications to increase the quality of life of people of which this project is one.

Developer's Stack

Other Work from The Developer

Web3 Education

I make it a point of duty to educate people on what I and many others believe is the future of the internet. Find attached a link to a lecture I gave to a group of friends about the fundamentals of Web3. I am also a member of a DAO called Web3 Aficionados where web3 developers are trained. I aid in tutoring aspiring web3 developers.

Timed Safelock Dapp

Created a Timed safelock dapp that allows users deploy Safelock contracts (safelock.sol) and use the contracts to safelock native blockchain currency for themselves or others to withdraw after a preset time has elapsed.

Link to live App
Link to Frontend Github
Link to Hardhat Github

NFT Raffle Using Thentic API

I wrote NFT raffle scripts using NodeJS using Thentic API for NFT commerce.