Project Story – BisonHacks SNAP Assistant

Inspiration

We were inspired by the theme of Truth and Service. Many people who qualify for food assistance programs like SNAP never apply because the process is confusing, intimidating, or inaccessible. We wanted to build a tool that makes government resources more transparent, trustworthy, and accessible to everyone, including those with disabilities or limited digital literacy.


What We Built

Our project is an AI-powered assistant that helps users:

  • Check SNAP eligibility
  • Understand required documents and application steps
  • Locate nearby food banks and community resources

The assistant is available through chat, voice, or phone, making it accessible to all. We used MongoDB to store verified program resources, LangChain + Google Gemini embeddings for retrieval-augmented generation (RAG), ElevenLabs for voice output, and Vapi for the phone interface.


How We Built It

  1. Data Collection: Scraped PDFs and state resources, then extracted text into MongoDB.
  2. Embeddings: Split text into chunks and converted to embeddings using Google Gemini.
  3. Vector Database: Stored embeddings in MongoDB Atlas for fast retrieval.
  4. RAG AI: When a user asks a question, relevant chunks are retrieved and fed into the AI to generate answers grounded in trusted sources.
  5. Front End & Voice: Built a React web app with chat and voice interfaces; voice responses powered by ElevenLabs; phone interaction via Vapi.

Challenges

  • Environment & Dependencies: Multiple Python and Node versions caused module conflicts and SSL issues with MongoDB.
  • API Limits: Gemini embeddings ran into quota restrictions, requiring batching and rate-limit handling.
  • Merging Code: Our scraper, embedding, and RAG scripts were in separate files and folders, which initially caused ModuleNotFoundError and path confusion.
  • Accessibility: Ensuring the assistant worked over web, voice, and phone required extra integration effort with ElevenLabs and Vapi.

Despite these challenges, we were able to create a unified system that allows anyone to check eligibility and find food resources easily.


Lessons Learned

  • The importance of RAG in delivering accurate, verifiable AI answers.
  • How to structure multi-file Python + React projects for clarity and maintainability.
  • Handling API quotas, SSL issues, and environment variables in real-world AI integrations.
  • Designing for accessibility, making technology usable for people with diverse needs.

Our project embodies the hackathon theme by serving truthfully: users get reliable information grounded in official resources, through the most accessible channels possible.

Built With

Share this project:

Updates