Hands-On Smart Contract Development with Solidity and Ethereum
by Kevin Solorio, Randall Kanna, David H. Hoover
Chapter 6. The Fundraiser Application
Now that we have successfully built and deployed our “Hello, World!” application, let’s continue our journey into building smart contracts by creating an application to allow beneficiaries to receive donations in ether. This application was chosen as a way for us to explore working with ether in our contracts and how we can use data structures to track balances over time, similar to what you would find in token contracts.
By building this application, we will take a closer look at Solidity, including learning more about constructors, getter and setter methods, structs and events, and a few other helpful tips along the way.
Before we start writing code, let’s take a moment to understand the application that we are about to build.
Application Overview
Our application is going to help a beneficiary, such as a nonprofit, or any other entity that may be looking for funding. The beneficiary will have an address set up on a service like Coinbase so that they can easily sell the ether and convert it to USD. With the Ethereum address being managed by Coinbase, the beneficiary will not have access to the private key and therefore cannot interact with a DApp from that address. This is where a custodian address can help.
The custodian address is another Ethereum address that either the beneficiary controls directly or someone operating on behalf of the beneficiary will own. This address can interact with a DApp, and it is this address that will be given ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access