Inspiration

As a high school student, I was planning to start acquiring my volunteer hours. But then, the coronavirus came to Canada and I was unable to get any volunteer hours. My sister used to volunteer at a nursing home, and that's when I thought of the idea. Elderly people who can't get assistance will have to rely on others to get their everyday essentials, while high school students (or anyone who wants to volunteer) are unable to volunteer. So why not solve both of these problems?

What it does

HelpingHands has two main functions, publishing and applying. For people who need volunteers to help with their event, HelpingHands allows them to publish their job on the Job List, where volunteers can find them. For volunteers looking for opportunities to help, simply go to the Job List and choose a job near their location that suits their skills. Once they apply for the job, an email will be sent to the employer so they can accept or reject the application.

How I built it

The front-end of this project is built with html, css, and javascript. The back-end of this project is built with the Django framework and Firebase.

Challenges I ran into

Since we worked on different parts of the project, there was some trouble bringing everything together. For example, sometimes the html and css had conflicts, or the pages were not linked correctly. We are still quite new to Django/firebase/pyrebase(wrapper), so that slowed down our debugging process.

Accomplishments that we're proud of

The web app functions as it was intended. Users can publish jobs and/or look for volunteering opportunities easily.

What I learned

We learned a lot about front-end and back-end development, more specifically: authentication, HTTP methods, firebase database functions, userId/localId/sessionId and how to use them, sending email with python, retrieving context in html files with django template engine, and more.

What's next for HelpingHands

We are going to need to have people use HelpingHands, both the elderly and the volunteers. We can spread the word about HelpingHands, such as creating a social media account. For the project itself, we can add features such as keep track of a user's hours volunteered, chatting on the website between the volunteer and the employer, automatically filter the jobs that are outside of the volunteer's community, and search and sort functions for the Job List.

Share this project:

Updates