🏠 ShelterSeek — Project Story
About the Project
The spark for ShelterSeek came from a simple but unsettling realization: finding a safe place to sleep shouldn’t be a gamble.
Today, when shelters reach capacity, individuals seeking refuge are often forced into a blind search—walking kilometers to the next facility, only to discover it is also full. This process wastes critical time, energy, and hope, often under harsh weather conditions. While shelter data does exist, it is rarely real-time and usually lives on websites that require smartphones, data plans, and digital literacy—barriers many unhoused individuals simply do not have.
We saw a massive disconnect between available information and accessible information. ShelterSeek was built to bridge that gap: a system that connects the most vulnerable members of our community to real-time shelter availability using technology that is actually accessible to them.
🚨 Feature 1: The “Waitlist” Alert (SMS Push)
This is ShelterSeek’s core hack feature, designed specifically for users with basic flip phones and no data plan. Instead of standing in line for hours or repeatedly checking an app, users can join a virtual waitlist through SMS.
How it works:
User Action The user texts a keyword such as:
Waitlist Men's Shelterto our Twilio-powered phone number.System Response Our backend assigns them a position in a virtual queue and instantly replies:
“You are #4 on the waitlist for Surrey Urban Mission. We will text you if a bed opens.”
The Trigger When a shelter staff member taps “Bed Available” on the React-based admin dashboard, a backend event is triggered.
The Notification The system automatically identifies the next person in line and sends them an SMS—removing the need for physical waiting entirely.
This feature replaces uncertainty with dignity and turns hours of waiting into a single text message.
🤖 Feature 2: AI-Powered “Info-Bot”
For users actively searching for shelter, every step counts. Instead of walking 5 km blindly, they can check availability before moving.
We upgraded a basic keyword search into an AI-powered SMS assistant using the Gemini API, allowing users to ask natural-language questions. How it works:
- User Action The user texts questions like:
“I need a place to stay near Gateway with my dog” “Is there room for a family of three?”
AI Processing Gemini parses intent and constraints such as:
- Location (e.g., Gateway)
- Requirements (pets, family size, accessibility)
System Response The bot queries our Firebase Firestore database and replies instantly with structured, readable results:
Here is what I found near Gateway:
🟢 Cove Shelter (2 spots) – Pet Friendly
🔴 Gateway Shelter (FULL)
🟢 Sums Place (1 spot)
This transforms shelter discovery from guesswork into informed decision-making.
🗺️ Feature 3: Real-Time Visual Navigator
If the SMS system is the ears of ShelterSeek, the Flutter-powered map is its eyes.
This feature is designed for Outreach Workers, Crisis Navigators, and Shelter Coordinators who need to see the city’s capacity at a glance. We built the app in Flutter (Dart) to ensure it runs smoothly even on older, budget smartphones.
How it works:
The Live Pulse Using Flutter’s
StreamBuilder, the app maintains a constant real-time connection to Firebase Firestore. There is no refresh button—the map updates automatically within milliseconds.Color-Coded Logic Custom Dart logic evaluates shelter capacity in real time:
- 🟢 Green →
beds > 0and status =OPEN - 🔴 Red → status =
FULL
- 🟢 Green →
The moment the last bed is taken, every user’s screen updates simultaneously.
- Visual Awareness Built with the Google Maps API, the dashboard replaces outdated static lists with a high-contrast, live situational overview of the city’s shelter network.
🧠 What We Learned & Challenges Faced
- Designing for accessibility-first, not convenience-first, fundamentally changed our technical decisions.
- SMS-based systems require careful handling of latency, state, and user feedback—especially when lives are affected.
- Ensuring real-time consistency across SMS, admin dashboards, and mobile maps pushed us to deeply understand event-driven architectures.
- Most importantly, we learned that impactful tech doesn’t always mean more screens—sometimes it means fewer.
ShelterSeek is not just a shelter finder. It is a system that restores time, dignity, and certainty—one text message at a time.
Built With
- dart
- firebase
- firebase-firestore
- flutter
- gemini-api
- google-cloud
- google-maps
- javascript
- react
- twilio
Log in or sign up for Devpost to join the conversation.