Inspiration
In the current state of our world, housing has slowly begun to be viewed as a privilege rather than what it really is: a necessity we all need that contributes greatly to the quality of our lives. Around the world, millions of families and individuals face the sudden threat of housing instability, unfair evictions, or immediate homelessness. Knowing where to look for the right resources tailored to your situation during a high-stress crisis can be incredibly overwhelming.
This reality inspired us to build NestorAI, an empathetic and highly accessible conversational chatbot designed to bridge the gap between housing-vulnerable populations and the immediate, localized aid they need to secure a safe and stable path forward.
What it does
NestorAI is made for uses who are in need of immediate aid, seeking resources and guidance for their living situations. Nestor has the user input their location, and then tailors it's responses to fit, reccomending local resources and adjusting suggestions based on local laws. Notably, Nestor does not provide legal advice or counsel, but simply acts a means for users to quickly understand where they stand and hwo to move forward in their situations.
To avoid critical details getting buried in the chat history, the application layout features a split-pane configuration, where the main pane handles the real-time conversational interface, while the sidebar featured:
Next Steps: A dynamic, clickable checkbox agenda based on the conversation that takes place between the user and Nestor.
Localized Resources: An on-the-fly directory complete with direct-dial phone numbers and hyperlinks customized to the user’s selected municipality, structured around the provided data of available resources for each location.
To ensure accessibility for a wide range of users, NestorAI incorporates native Speech-to-Text voice typing, Text-to-Speech audio reading, a hardcoded emergency hotline banner, and a theme switcher offering five reading profiles optimized for high-glare or low-light visibility.
How we built it
We engineered NestorAI to operate as a lightweight, fast single-page web app tailored for users who might access it on older mobile devices or over unstable data connections.
Architecture: We built our web application with semantic HTML5 and vanilla CSS3, avoiding heavy frameworks to maximize runtime efficiency.
Core AI Engine: We utilized the open-weight
llama-3.1-8b-instantmodel hosted on the Groq Developer API, selected due to its speedy inference intervals. We coded a strict set of instructions for the AI component of our project to ensure accurate and helpful responses be provided.Data and Logic Systems: The emergency assistance services and localized tenant frameworks that the user was provided with were based on client-side static JSON schemas we compiled. This ensures that the aid users are directed to are local to them.
Challenges we ran into
Our most critical challenge was preventing the AI from providing false legal advice or fabricating emergency contact numbers. Foundational language models like llama-3.1-8b-instant wish to be helpful, so if tasked with providing resources for a location that has no resources on file, the AI fill fill in blanks to provide the user with something of substance. These fake resources, phone numbers, and websites can give vulnerable people fake hope, doing the opposite of what our AI was built to help with.
To solve this, we had to build a lightweight, client-side Retrieval-Augmented Generation (RAG) pipeline to strictly ground the model in reality.
Dynamic Context Anchoring: We created structured, localized databases containing vetted, real-world data (such as the Stay Housed LA program details and verified food bank coordinates). These are inteded to be continously monitored and updated for accurate information.
Geographic Filtering: Using the cascading location dropdowns (powered by the CountriesNow API), the application identifies the user's exact municipality.
Prompt Injection: Before sending the user's message to the Groq API, our JavaScript engine filters those JSON databases for matching city/state parameters and injects only the verified local laws and real phone numbers directly into the model's hidden system prompt.
This process effectively put "blinders" on the AI, forcing the model to only pull from the resources we have vetter personally. This avoids the risk of fake resources and emergency numbers being shared to already vulnerable populations.
Accomplishments that we're proud of
Successful implementation of the accessibility features in our web application is an area of our project we are very proud of. Recognizing that users facing a housing crisis are often operating under extreme cognitive distress, using older mobile devices, or navigating low-literacy barriers, we engineered NestorAI to meet them exactly where they are.
The utlization of bidirectional voice interface (Speech-to-Text and Text-to-Speech) cuts out the need for heavy external apps, dynamic theme options allows optimized readibility in high-glare or low-light environments, and the Quick Chip feature allows users who don't know where to start to get their bearings and understand the functionality of the platform easily. All these make for a smoother user experience and provides a sense of much needed ease for our audience.
What we learned
Building NestorAI taught our team invaluable lessons about technical constraints and human-centric design. We learned how to manipulate raw AI outputs into reliable, structured application state machines using strict prompt boundaries and JSON compliance. For many of us, this was our first time implementing an API into a project, and though it took a learning curve we were able to all walk away with a better understanding of many core pricniples of AI-integration. We gained a deep understanding of implementing browser-native accessibility features like text-to-speech and speech recognition without adding heavy dependencies, an idea we had at the start of our brainstorming that we are so glad panned out.
What's next for NestorAI
While our initial proof-of-concept maps out highly specific, detailed regional parameters for legal knowledge and communnity resources, limiting our pool to only Los Angeles, Calfifornia, USA, we specifically designed our underlying data schema to scale globally. In the future, we hope to
Scale our localized data storage to encompass municipal guidelines across major cities across the world.
Implement real-time Webhook sync connections directly with local legal aid networks and shelter databases to show live, up-to-the-minute bed counts and clinic availability.
Establish an offline Progressive Web App (PWA) service worker configuration, allowing vulnerable users to retain full access to their saved checklists, notes, and local legal information even if they lose cellular service entirely.
Log in or sign up for Devpost to join the conversation.