## Inspiration

In the “new normal” that COVID-19 has caused us to adapt to, our group found that a common challenge we faced was deciding where it was safe to go to complete trivial daily tasks, such as grocery shopping or eating out on occasion. We were inspired to create a mobile app using a database created completely by its users - a program where anyone could rate how well these “hubs” were following COVID-19 safety protocol.

## What it does

Our app allows for users to search a “hub” using a Google Map API, and write a review by rating prompted questions on a scale of 1 to 5 regarding how well the location enforces public health guidelines. Future visitors can then see these reviews and add their own, contributing to a collective safety rating.

## How I built it

We collaborated using Github and Android Studio, and incorporated both a Google Maps API as well integrated Firebase API.

## Challenges I ran into

Our group unfortunately faced a number of unprecedented challenges, including losing a team member mid-hack due to an emergency situation, working with 3 different timezones, and additional technical difficulties. However, we pushed through and came up with a final product we are all very passionate about and proud of!

## Accomplishments that I'm proud of

We are proud of how well we collaborated through adversity, and having never met each other in person before. We were able to tackle a prevalent social issue and come up with a plausible solution that could help bring our communities together, worldwide, similar to how our diverse team was brought together through this opportunity.

## What I learned

Our team brought a wide range of different skill sets to the table, and we were able to learn lots from each other because of our various experiences. From a technical perspective, we improved on our Java and android development fluency. From a team perspective, we improved on our ability to compromise and adapt to unforeseen situations. For 3 of us, this was our first ever hackathon and we feel very lucky to have found such kind and patient teammates that we could learn a lot from. The amount of knowledge they shared in the past 24 hours is insane.

## What's next for SafeHubs

Our next steps for SafeHubs include personalizing user experience through creating profiles, and integrating it into our community. We want SafeHubs to be a new way of staying connected (virtually) to look out for each other and keep our neighbours safe during the pandemic.
## Inspiration

As students, we have found that there are very few high-quality resources on investing for those who are interested but don't have enough resources. Furthermore, we have found that investing and saving money can be a stressful experience. We hope to change this for those who want to save better with the help of our app, hopefully making it fun in the process!

## What it does

Our app first asks a new client a brief questionnaire about themselves. Then, using their banking history, it generates 3 "demons", aka bad spending habits, to kill. Then, after the client chooses a habit to work on, it brings them to a dashboard where they can monitor their weekly progress on a task. Once the week is over, the app declares whether the client successfully beat the mission - if they did, they get rewarded with points which they can exchange for RBC Loyalty points!

## How we built it

We built the frontend using React + Tailwind, using Routes to display our different pages. We used Cohere for our AI services, both for generating personalized weekly goals and creating a more in-depth report. We used Firebase for authentication + cloud database to keep track of users. For our data of users and transactions, as well as making/managing loyalty points, we used the RBC API.

## Challenges we ran into

Piecing the APIs together was probably our most difficult challenge. Besides learning the different APIs in general, integrating the different technologies got quite tricky when we are trying to do multiple things at the same time!

Besides API integration, definitely working without any sleep though was the hardest part!

## Accomplishments that we're proud of

Definitely our biggest accomplishment was working so well together as a team. Despite only meeting each other the day before, we got along extremely well and were able to come up with some great ideas and execute under a lot of pressure (and sleep deprivation!) The biggest reward from this hackathon are the new friends we've found in each other :)

## What we learned

I think each of us learned very different things: this was Homey and Alex's first hackathon, where they learned how to work under a small time constraint (and did extremely well!). Paige learned tons about React, frontend development, and working in a team. Vassily learned lots about his own strengths and weakness (surprisingly reliable at git, apparently, although he might have too much of a sweet tooth).

## What's next for Savvy Saver

Demos! After that, we'll just have to see :)
## Inspiration

With the spread of the COVID-19 pandemic, many high risk individuals are unable to go out and purchase essential goods such as groceries or healthcare products. Our app aims to be a simple, easy-to-use solution to facilitate group buys of such goods amongst small communities and neighbourhoods. Group purchasing of essential goods not only limits the potential spread of COVID-19, but also saves waste and limits GHG emissions.

## What it does

At it's core, the app is meant to promote small communities to participate and host group purchases of essential goods within themselves. Users input wanted items into a list that everyone in the community can see, and then a designated purchaser uses this list to purchase items for the neighbourhood.

## How we built it

On the front-end, we used Android Studio alongside Java to create a simple UI for users to input their desired purchases into lists that everyone in the group/neighbourhood can add to. With respect to the back-end, we used Mongoose for schema validation, MongoDB Atlas to host our database, Express for routing, and developed a custom-made authentication module for protecting our endpoints. Finally Postman was used to test and debug endpoints, and AWS to host the server.

## Challenges we ran into

Our team was completely new to nearly every aspect of this project. We had little experience in database management and user authentication, and next to none in mobile development. It took us about 5 hours just to get our environments setup and get up to speed on the technologies we chose to use.

When it came to authenticating users, we had lots of trouble getting Google Authentication to work. We sunk a lot of time into this issue and finally decided to develop a novel authentication methodology of our own.

## Accomplishments that we're proud of

We're incredibly humbled to have learned so much in such little time. We chose this project because we felt we would be challenged as software developers in our choice of technologies and implementation. Nearly every single technology used in this project was completely new to each of us, and we feel like we learned a lot of new things, such as how to use Android Studio, developing a custom API overnight, and the principles of user authentication.

We're also proud of having come into the hackathon with an initial idea and being able to pivot quickly in another direction, scrapping our original idea in favor of grocerWE.

## What we learned

We learned that mobile development can be rewarding and principles of software construction learned in junior courses were invaluable to the creation of this project. Additionally, we also learned how important user authentication is and how it's prevalent in nearly all of our apps that we use today. Creating this app also helped us realize the impact of technology on society today, and how a simple idea can help unite people together in a global pandemic.

## What's next for grocerWE

Given the time constraints of the hackathon, and how inexperienced our group was to these new technologies, there are many things that we wanted for grocerWE that we weren't quite able to implement.

We'd like to be able to add Google Maps integration, where users are able to add their address to their profile in order to make delivery of groceries easier on the designated purchaser. Additionally, user roles such as purchaser or orderer were not really implemented.

For the above reasons, we considered these issues out of scope and focused our time on other fundamental aspects of grocerWE.