At the moment managing communications for a small charity requires multi-skilled people who can create marketing and PR campaigns, develop websites, deal with journalists, manage events, as well as being a whizz at social media. Most of the bigger charities have large communication teams who collectively posses these skills. But for small charities the picture is very different. Also, donating to charities online is too time consuming and complex, moreover the websites take commissions, and you're not even sure if your money will reach them. The aim of the project is to make the donation procedure fair to the charities and transparent to the user.

What it does

In order to help small charities and make it a fair game for everyone, we have developed a website that will randomly donate the money to any of the charities on the list. User can select the charity category in which he would like to donate but the money would go automatically to any of the charities under that category list. Secondly, to make it transparent to the users, we are storing the transaction data on a public blockchain, anyone can view and read it. Moreover, its easy to use and free, we don’t take any commissions and in order to make it easy for the user, the user can set up an automatic round up to every transaction on the card so that the user does not have to do it every time.

How we built it

We built the front end using AngularJS, HTML and Bootstrap. The backend is MongoDB and the transactional data is stored on blackchain. We used Java to build the REST APIs and connect the whole thing.

Challenges we ran into

  1. Integration of different APIs was a bit challenging
  2. Setting up the ui-routers in Angular.js
  3. Updating nested objects in MongoDB.
  4. Keeping the application simple and easy to use.
  5. Creating a trustworthy list of charities was challenging, so we took the list from an authorized charity watchdog.

Accomplishments that we're proud of

Getting it to actually work.

What we learned

  1. Basics of Blockchain and a shared public ledger
  2. Learned routing and resource management in AngularJS

What's next for Charity Wheel

Adding support for more charity organizations and trending causes, also adding goals for the user and the ability to specify the amount of donation and max deductions.

Share this project: