We wanted to create something that would encourage individuals in our society to show compassion and understanding towards others, especially during the time of the Covid-19 pandemic. We believe that an act of kindness can positively impact your community and help build a happier society. This inspired us to create Generocity, a website that vitalises the importance of being kind to others.

What it does

On our website, users can post their contributions to the community and get recognised for their efforts by earning badges. We use sentiment analysis as a means to evaluate their tasks, providing a score as an indication of how positive a task is. Users also get awarded badges for completing a range of tasks which also includes contributing towards UN sustainable goals. Furthermore, users can share their achievements on social media or use their profile as a portfolio for applying to jobs and volunteering opportunities.

How we built it

Generocity is a Flask application that uses Google’s Firebase realtime database to store user information. We also used Firebase authentication to handle passwords and user login. This was made possible by utilising Pyrebase, a Python wrapper to handle Firebase commands in Flask. Morever, the website makes use of Google’s Natural Language API for sentiment analysis and Google Maps Javascript API as well as geocoding API for the functionality of google maps. The frontend was designed using HTML, CSS and Bootstrap framework.

Challenges we ran into

We spent a majority of the beginning of the hackathon struggling with import errors; due to issues with pip, even after hours of research, one of our members could not use our code and had to isolate her code and work on it separately. We also had various issues with Git such as work being overwritten, as we were pushing commits frequently due to the short time period. Moreover, we encountered other minor problems such as passing objects into JavaScript and calling Python functions from within a template. After much research, we were able to implement the desired features.

Accomplishments that we're proud of

We’re proud of implementing the majority of the ideas and working with APIs to create a functional website within 24 hours. We also feel accomplished as we learnt how to use a realtime NOSQL database even with lacking much experience with using databases. Finally, we are happy to take home a project to work on and further develop it during the summer break.

What we learned

Through this project, we learnt how to use various new technologies such as Google’s various APIs and Firebase. We gained experience with using Git, and resolving various Git issues. We also learnt how to split our team effectively to get as much work done in the 24 hours, and solve problems collaboratively.

What's next for Generocity

  1. One of the tasks that we were unable to complete in the short time frame was showing the user’s task history, so completing this would be a priority.

  2. Currently, users can only earn badges and points for entering tasks; however, to incentivise users, we aim to partner with companies and organisations to offer vouchers or other incentives.

  3. Moreover, we aim to also offer the ability for users to donate to various charities through our website, and for this to be automatically added as a task.

  4. Finally, we plan on adding a reporting system and training a custom Natural Language model (using AutoML Natural Language) to identify what a false positive and false negative project description might look like.

Built With

Share this project: