## Inspiration

My Alternative Spring Break trip from the Pennoni Honors College last year focused on homelessness. I spent a week living at a homeless shelter in Old City and each day would volunteer at a different food bank and shelter. I spent a lot of time sitting down with individuals who had no permanent residence and asked them if there was anything I could do to help. A lot of individuals mentioned that the only access they had to internet was via the public library or free internet kiosks; however, almost everyone had a private non-smartphone.

## What it does

Gimme-Shelter provides users with information about local help centers through the use of SMS. Users subscribe to daily announcements and input parameters such as their age, number of dependents, gender, sexual orientation. Users can send an SMS to the Gimme-Shelter number and receive information back accordingly, whether it's number of remaining beds at the closest shelter, number of remaining flu shots, etc.

## How we built it

We used google cloud to host a sql database and a vm instance. We then connected the sql database to the vm instance with firewall and routing rules. We used flask to host a server instance on the vm and utilized Twilio, Python, HTML, and Javascript to set up web routing and SMS routing. We also leveraged ML and Fuzzy Logic to parse user inputted passwords and provided custom real-time responses.

## Challenges we ran into

Everything that could go wrong went wrong. -Murphy's Law
Our Twilio account got suspended temporarily (twice)

## Accomplishments that we're proud of

We are proud of creating an SMS platform that hopefully will one day serve the city's less fortunate.

## What we learned

Learned how to integrate Twilio with Google Compute Engine and SQL database
Learned how to use Flask and set up web routing through it

## What's next for Gimme-Shelter

Connect with food banks and homeless shelters to connect as many people as possible with the information they need in the best way possible.
## Inspiration

As students in a busy city, safety is our topmost concern. We need to stay connected, so that in case of an emergency, others can quickly find out about it and take action. However, existing tools do not offer the right features and are not convenient to use. As such, we wanted to build a solution that would allow students to easily share their location with the people they trust, in case of an emergency. This way, another person can have all the necessary information to notify the authorities, try to find and help their trustees.

## What it does

*I'll Be Back* allows students to say "I'm going [there], and keep [my trusted friend] up to date just in case." The walker would enter a trusted person's name and phone number, and also add where they're going, when they are coming back, and a short message. The trusted person will get an SMS notification that their friend is going out, to stay alert in case an emergency comes up. If something happens, the walker can alert the trustee with a single click and send their *I'll Be Back* app URL via message. Additionally, *I'll Be Back* watches for anomalies such as phone shutting off or walker taking too long and notifying the trustee. The trustee would see where their friend was going to and from, and what their last synced location was.

## How we built it

*I'll Be Back* is a reactive web app with React on the front end, and NodeJS and Express on the back end. We used Socket.io to efficiently sync the walker's location with our server. The whole website is hosted on Google Cloud and uses a Domain.com domain: `illbeback.tech`. For all notifications to the trustee, we use Twilio.

## Challenges we ran into

* Managing the deadline - we had to pivot a few times until we had a direct vision of the app we wanted to build. Unfortunately, we had to cut some of the features we envisioned, such as smart anomaly detection, to finish the app on time.
* Working on one project in a group - as a beginner hackathon team, we had to efficiently distribute work that would best fit our strengths. While working together was a lot of fun, we had to quickly resolve code merge conflicts, and help each other in case of major issues.
* Picking best ideas - deciding together what features we could potentially implement in such a short period.

## Accomplishments that we're proud of

* Successfully finishing, integrating, and demoing the end-to-end product.
* Integrating Google Maps API to push, fetch and display walker location.
* Using Twilio for efficient, SMS trustee notifications.
* Figuring out how to run a GCP server and linking our `illbeback.tech` domain.
* Resolving some nerve-wracking bugs in the middle of the night :)

## What we learned

* How to setup GCP
* How to use the Twilio API
* How to integrate Google Maps with our website
* How to configure website routing

## What's next for *I'll Be Back*

* Collaborating with the campus police so that walkers can notify them immediately of their location in case of an emergency, improving on the existing Cal BearWalks.
* Persistent storage to store the accounts of trusted friends, common destinations, etc.
* Machine learning-based anomaly detection during the journeys would intelligently detect potential safety threats to the walkers.
## Inspiration

It sometimes feels so innate to find inspiration from everyday routine. One such case is when my teammates and I were on a group call when we discussed about how we got **calls from spammers \*\*almost every day and how convincing it seemed to everyone who talked to them for a while. As we discussed further we found the problem continued in the current technological world of social media where we find \*\*spams on Twitter** as well. So, we decided to create an app for the problems faced by people in the virtual world.

## What it does

The application is designed for easy usage while keeping every user in mind. The app targets **phone numbers** and **twitter accounts** of spammers and lets the users review the person behind it. The users can also look up the reviews added by other people on the platform along with relevant photos and tags. To make the app more secure we have **integrated OTP services** for new user registration.

## How we built it

We tried to build the application with a simple idea in mind. We made it keeping the everyday challenges that we faced in mind and all the technologies and software that we are good at. For seamless integration into all mobile operating systems we developed the front end using **React Native** and the back end was made using **Node.js** hosted on **Google Cloud** app engine for synchronous code execution. As for our messaging and OTP services we decided to go with **Twilio** for reliable connectivity anywhere in the world. We even used Twitter API for collecting and analysing tweets. Finally, for database management we incorporated **NoSQL Cloud Firestone** and consolidated **Google Cloud** storage for blob files.

## Challenges we ran into

The primary challenge that we ran into was the **long-distance communication** with the team. As the event was online our team was based from different parts of the world. With that we had different time zones. This led to lack of communication and longer response time. As we proceeded further into the event we **adapted to each other’s schedule and work**, which all in all was a great experience in itself.

## Accomplishments that we're proud of

While creating the whole project we accomplished a lot of things and overcame a lot of challenges. Looking back, we think that making a **fully functional app in less that 36 hours** is the greatest accomplishment in itself.

## What we learned

Our team enjoyed a lot during the project as we learned to make our way through. The key points that all of us can say we learned was **cooperation** and **efficiency** all while staying online the whole time. There was a unspoken understanding that we developed in the past few hours that we can say we are really proud of.

## What's next for SafeView

We developed SafeView keeping the future in mind. Our team has a lot of plans and hopes for the application. But first we will try to **improve our UI** and make it more user friendly along with covering **more test cases** for the better learning of the app and covering all possibilities. Finally, we plan to **add location for our app** and help real world users to stay aware of bad neighbourhoods all this while improving any bugs that we can find in the app.