\documentclass[11pt, a4paper]{article}

% --- UNIVERSAL PREAMBLE BLOCK --- % This block sets up the page, fonts, and language support. % We are using Noto Sans as the default font. \usepackage[a4paper, top=2.5cm, bottom=2.5cm, left=2.5cm, right=2.5cm]{geometry} \usepackage{fontspec}

\usepackage[english, bidi=basic, provide=*]{babel} \babelprovide[import, onchar=ids fonts]{english}

% Set default/Latin font to Sans Serif in the main (rm) slot \babelfont{rm}{Noto Sans} % \babelfont{sf}{Noto Sans} % Sans-serif font % \babelfont{tt}{Noto Sans Mono} % Monospaced font

% --- END UNIVERSAL PREAMBLE BLOCK ---

% Additional packages \usepackage{hyperref} % For clickable links, must be loaded last \hypersetup{ colorlinks=true, linkcolor=blue, filecolor=magenta,
urlcolor=cyan, pdftitle={The Story of bAI Watch}, pdfpagemode=FullScreen, }

% Title and Author setup \title{The Story of bAI Watch \ \large A Hackathon Project for Public Service} \author{Project: bAI Watch \ Hackathon: Utilizing AI for Public Service} \date{} % No date to keep it clean

\begin{document}

\maketitle \vspace{-2em} % Reduce space after title

% Use \section* to create unnumbered sections for a story-like feel \section*{Our Inspiration: A Personal Mission for Corpus Christi}

The hackathon's theme, ``Utilizing AI for Public Service,'' resonated deeply with us. Living in Corpus Christi, Texas, disaster preparedness isn't just an abstract concept---it's an annual reality. Every hurricane season brings a familiar anxiety. We saw a critical gap: emergency alerts are "one-size-fits-all," but a family with an elderly relative has vastly different needs than a college student, and neither knows if their evacuation route will be flooded.

This gap was our inspiration. We didn't want to just build another weather app. We wanted to create a personal preparedness \emph{partner}. Thus, \textbf{bAI Watch} was born, grounded in our community with the tagline: ``Smarter monitoring. Safer community. Preparing Corpus Christi, One Alert at a Time.''

\section*{How We Built It: The Dual-AI Core}

For a hackathon, our architecture was ambitious, but we knew it had to be to solve the problem. We built a full-stack application centered around a "Dual AI Agent System."

Our tech stack was a mosaic of modern tools: \begin{itemize} \item \textbf{Frontend:} A responsive React application using React Router for navigation and a custom component library for the emergency-themed UI. \item \textbf{Backend:} We ran two separate Node.js servers. A main server for the core logic (using Sequelize and SQLite) and a dedicated server for the SOS voice agent. \item \textbf{Core AI APIs:} We used OpenAI (GPT-4o-mini) for its powerful reasoning and generation, and AI Voice VOIP for its realistic, interactive voice call capabilities. \item \textbf{Key Integrations:} We used Firebase Authentication for user management, Google Maps and TomTom APIs for routing and shelter location, and OpenWeatherMap for real-time hazard data. \end{itemize}

This stack powered our two main features: \begin{enumerate} \item \textbf{The Action Plan Agent (The Planner):} This AI agent is the user's personal logistician. It analyzes their household (family size, medical needs, pets) and location. It then calls the OpenAI API to generate truly personalized supply checklists and uses the Google Maps API to create custom, real-time evacuation routes to local shelters.

\item \textbf{The SOS AI Voice Agent (The Lifeline):} This is the "panic button." In a real emergency, a user just speaks. The browser's Web Speech API transcribes their plea. Our backend classifies the emergency (fire, medical, etc.) and instantly triggers the BLAND AI API. This agent then places automated, interactive voice calls to their emergency contacts and authorities, relaying their location and crisis. We even streamed the call transcript back to the app in real-time.

\end{enumerate}

\section*{What We Learned: Beyond the Code}

This project was a crash course in system integration. We learned that the real power of modern AI isn't in a single model, but in the \emph{orchestration} of multiple specialized services. Making OpenAI, BLAND AI, Google Maps, and OpenWeather "talk" to each other was the secret sauce.

More importantly, we learned that the true innovation in AI for public service is \textbf{personalization}. You can't just tell a city to "evacuate." You must tell a \emph{person} how to evacuate, with their specific needs in mind. AI is the only tool that can provide this level of tailored guidance at scale, transforming generic alerts into actionable, personal intelligence.

\section*{Challenges We Faced: The Hackathon Gauntlet}

Our biggest challenge was, without a doubt, the \textbf{SOS AI Voice Calling Agent}. This wasn't a simple API call; it was a fragile, real-time chain of events.

The flow---capturing user audio, transcribing it, classifying the intent, passing structured data to AI Voice VOIP, initiating the call, and streaming the transcript---had to work flawlessly in seconds. Debugging this under a time crunch was intense. Any single point of failure (a slow transcription, a wrong classification) would break the entire chain.

The second major challenge was scope. With so many powerful APIs, it was tempting to add feature after feature. We had to be disciplined and focus on polishing our core "Dual AI Agent" system, ensuring our central promise was met: a platform that prepares you \emph{before} the crisis and acts as your lifeline \emph{during} it.

\subsection*{A Final Thought} bAI Watch became more than just our hackathon submission. It's our tangible vision for a future where technology and public service unite to create a smarter, safer Corpus Christi.

\end{document}

Built With

Share this project:

Updates