## **💡 Inspiration**

Hours have been spent by our friend group trip planning, with many indecisive individuals and schedule clashes Wayfarer was created to resolve our trip planning horror.

## **🔍 What it does**

Wayfarer automates the entire trip planning process by generating a full travel itinerary based on three major prompts entered by the user. The user inputs a sentence including their city of destination, trip dates, and budget. Our program than generates a travel itinerary displayed as a timeline with images and descriptions of the attractions showcased to the user. The user can than drag and drop the timeline as desired to fit their schedules and needs.

## **⚙️ How it was built**

Wayfarer was built with the following tools and languages:

* HTML
* CSS
* React
* Co:here
* FastAPI
* SerpAPI

## **🚧 Challenges we ran into**

In terms of front-end we ran into implementing a “search button” for our user prompt entry. We aimed to create a dynamic front end that would be user interactive (flipping + drag and drop functions).

For back-end, web scraping and finding the right google search API took the greatest amount of time. Each website had different html architectures which resulted in us web scraping each website that was visited

## **✔️ Accomplishments that we're proud of**

Within 24 hours, we were able to pick up on implementing different google search APIs we have never worked with prior. We showed great grit in completing a demo-able project.

Additionally...

Learning the ins and outs of React
Working with and handling pre-made APIs
Connecting Front + Back End and understanding how API end points and requests work

## **📚 What we learned**

Throughout DH9, we were all able to improve our skills as programmer and learn the ins and outs of search APIs and web scrapping.

## **🔭 What's next for**

Wayfarer is looking to wayfare into the AI and ML realm to optimizer itinerary generation through user data and experience. Further more, we seek to implement voice to text recognition which will allow users to utilize Siri/Google Assistant or any other voice assistants to generate full fledged itineraries for them.
## 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.
## Inspiration

One of our teammate’s grandfathers suffers from diabetic retinopathy, which causes severe vision loss.
Looking on a broader scale, over 2.2 billion people suffer from near or distant vision impairment worldwide. After examining the issue closer, it can be confirmed that the issue disproportionately affects people over the age of 50 years old. We wanted to create a solution that would help them navigate the complex world independently.

## What it does

### Object Identification:

Utilizes advanced computer vision to identify and describe objects in the user's surroundings, providing real-time audio feedback.

### Facial Recognition:

It employs machine learning for facial recognition, enabling users to recognize and remember familiar faces, and fostering a deeper connection with their environment.

### Interactive Question Answering:

Acts as an on-demand information resource, allowing users to ask questions and receive accurate answers, covering a wide range of topics.

### Voice Commands:

Features a user-friendly voice command system accessible to all, facilitating seamless interaction with the AI assistant: Sierra.

## How we built it

* Python
* OpenCV
* GCP & Firebase
* Google Maps API, Google Pyttsx3, Google’s VERTEX AI Toolkit (removed later due to inefficiency)

## Challenges we ran into

* Slow response times with Google Products, resulting in some replacements of services (e.g. Pyttsx3 was replaced by a faster, offline nlp model from Vosk)
* Due to the hardware capabilities of our low-end laptops, there is some amount of lag and slowness in the software with average response times of 7-8 seconds.
* Due to strict security measures and product design, we faced a lack of flexibility in working with the Maps API. After working together with each other and viewing some tutorials, we learned how to integrate Google Maps into the dashboard

## Accomplishments that we're proud of

We are proud that by the end of the hacking period, we had a working prototype and software. Both of these factors were able to integrate properly. The AI assistant, Sierra, can accurately recognize faces as well as detect settings in the real world. Although there were challenges along the way, the immense effort we put in paid off.

## What we learned

* How to work with a variety of Google Cloud-based tools and how to overcome potential challenges they pose to beginner users.
* How to connect a smartphone to a laptop with a remote connection to create more opportunities for practical designs and demonstrations.
How to connect a smartphone to a laptop with a remote connection to create more opportunities for practical designs and demonstrations.
How to create docker containers to deploy google cloud-based flask applications to host our dashboard.
How to develop Firebase Cloud Functions to implement cron jobs. We tried to developed a cron job that would send alerts to the user.

## What's next for Saight

### Optimizing the Response Time

Currently, the hardware limitations of our computers create a large delay in the assistant's response times. By improving the efficiency of the models used, we can improve the user experience in fast-paced environments.

### Testing Various Materials for the Mount

The physical prototype of the mount was mainly a proof-of-concept for the idea. In the future, we can conduct research and testing on various materials to find out which ones are most preferred by users. Factors such as density, cost and durability will all play a role in this decision.