Inspiration
The inspiration for this project comes from a desire to help others through a software that offers clearer transparency for donations to charity. Donating to charity is a noble thing to do but the non-profit world is rife with cases of people improperly using funds or your funds having minimal impact. This may be something that a donator doesn't want, or they are interested in seeing the end impact of their funds and that's where our software comes in. This software enables users to send blockchain tokens that can't be changed in order to ensure that a charity is acting fairly, and that the usage of a person's donations used in a ethical and reasonable way. This helps people ensure that the charities or organizations that they donate to are acting honestly and with a sense of fiduciary trust.
What it does
The software currently returns a list of donation recipients to the donator. It does this by using a resource driven programming paradigm where resources i.e. important information can only be passed by physically shifting the storage of the information. This resource driven paradigm ensures that people operating in the middle or outside the smart contract can tamper with the terms of the smart contract or any of the transaction data.
How we built it
We built the program using Flow blockchain technology. This was programmed using Cadence which is a smart contract programming language that is designed to ensure safety, security, and more syntactically understand code. This was developed using the Flow Playground which generates cadence files that are then run using a vs code extension for running flow. The program requires contracts, transactions, and accounts. This allows you to deploy contracts to accounts i.e. users which can then use the contracts to issue transactions that handle interactions between accounts. These transactions should then be logged into an output terminal that will offer ways to see if the contract was successful or not and who received the donation.
Challenges we ran into
- Flow's playground doesn't properly track storage assets (noted by their team in their forum) so to test asset management we had to look for specific errors in our log that were indicative of whether or not our storage transactions went through.
Accomplishments that we're proud of
- Learning NodeS basics for frontend (even though it was not used in our final design).
- Picking something that was challenging.
- Learning an entire blockchain technology in a weekend.
- Experimenting with blockchain methodologies.
What we learned
- How teamwork and collaboration affect project timeliness and execution.
- How to learn things quickly.
- How to focus on the big picture and persevere through challenges.
What's next for The Giving Tree
- Needs Multi-user support.
- Needs a paradigm that avoids hard coding donators.
- We believe it could be very beneficial to charities if polished up, as it will increase users trust with charities and drum up interest in a new, innovative and social type of donations.
Built With
- cadence
- flow
Log in or sign up for Devpost to join the conversation.