HavenLink

Google Developer Student Club · Social Impact

HavenLink is an AI chatbot that acts as a case manager to help connect unhoused individuals in the Bay Area with housing, food, medical, and transportation resources.

Role
Project lead · team of 5
Club
Google Developer Student Club
Stack
React · Firebase · RAG
Field tests
Biweekly · 35+ people
Partners
10+ non-profits
Fig. 1 · Testing the prototype with the team

Abstract

01Leading 5 team members to build an AI-powered solution (React + Firebase + RAG) that simulates a case manager.
02Biweekly field tests with 35+ unhoused individuals, iterating on the UX in between sessions.
03Partnerships with 10+ non-profits, whose information the RAG system pulls from.
01Problem~10k unhoused residents

Every other Saturday, I wake up at 7 am and head to a homeless shelter with my team. Santa Clara County counted ~10k unhoused residents in 2025, and the case managers who connect them to resources are overwhelmed by volume. As a project lead of HavenLink, I build and test an AI agent that acts as a case manager that connects unhoused people in the Bay Area with housing, medical care, transportation, and food.

HavenLink is a project in the Google Developer Student Club.

02Field Tests35+ people per session

Every session, we sit with more than 35 people seeking resources, watching them use our tool to find the nearest food bank open on a Monday, or the nearest shelter with availability. Every time we gave out a resource, we manually checked it online to make sure there was no hallucination, since there was no margin for error and our precision needs to be 100%.

We iterated in between sessions and seeing the raw impact we were able to make on each individual person as they walked away with a piece of paper with their resources would make my week.

Earliest prototype

Fig. 2 · Earliest prototype, then called ShelterLink

Our earliest prototype was a chatbot that could barely output a formatted response, but we celebrated the milestone of successfully receiving an answer.

Version 2: UI iteration

Fig. 3 · Version 2 homepage

We overhauled the UI for version 2 and added the most commonly asked questions as examples on the homepage.

Final Version: Deployment and live testing

Fig. 4 · Final version demo

For our final version, we polished the UI to look more professional and added formatted responses that are checked for hallucination.

03IterationHallucination → RAG

The hallucination

While most AI products can survive an occasional hallucination, ours could not, since the wrong shelter address or wrong food bank opening hours can be detrimental to the person.

Before deployment and live testing, we shared our prototype with our nonprofit partners and they found a few issues: One of our partners asked what apartments are available in Mountain View, and the chatbot told them that the Mountain View Community Center, the Mountain View Housing Authority, and the Mountain View Housing Corporation all offer affordable housing. The community center does not have apartments, and our partner had never heard of the other two.

Fig. 5 · The email from our nonprofit partner showing hallucination

This exposed three issues to us:

01

Hallucination

02

Lack of up-to-date information

03

Lack of domain knowledge

To fix the first two issue, I implemented a Retrieval Augmented Generation system that pulls information from our nonprofit and shelter partners to host the most up to date information.

Before, there was no difference between our chatbot and ChatGPT. But now, it draws from a binder of vetted resources from our trusted community partners, embedding their domain konwledge into our RAG corpus. Some of these information is even more updated than what was online, ensuring that our chatbot is always up to date.

Fig. 6 · Iterating on hallucination with our partners

Demo day

Fig. 7 · Presenting HavenLink