# Durban Alert: AI-Powered Flood Warning System
Durban Alert is a web application designed to provide timely and accurate flood warnings to the residents of Durban, South Africa, directly through WhatsApp. It leverages AI to analyze weather data, assess flood risks, and deliver personalized alerts in multiple languages.
## Features
- **WhatsApp Integration**: Users can register and receive alerts directly on WhatsApp, powered by Twilio.
- **AI-Powered Risk Analysis**: Utilizes Genkit and Google's Gemini models to analyze weather patterns and assess real-time flood risks for specific areas within Durban.
- **Automated User Registration**: A conversational AI agent handles user registration via a guided WhatsApp conversation.
- **Personalized Weekly Summaries**: Delivers weekly weather summaries tailored to the user's location, language, and profession.
- **Multi-language Support**: Alerts and communications are available in English, Zulu, and Afrikaans.
- **Admin Dashboard**: A comprehensive dashboard for administrators to monitor users, view alert logs, perform risk analysis, and configure the system.
- **Secure Credential Management**: Twilio credentials and other sensitive data are stored securely in a MongoDB database.
## Tech Stack
- **Framework**: Next.js (with App Router)
- **Generative AI**: Google AI - Genkit (with Gemini models)
- **UI**: React, ShadCN UI, Tailwind CSS
- **Database**: MongoDB
- **Messaging**: Twilio WhatsApp API
- **Styling**: Tailwind CSS
- **Deployment**: Firebase App Hosting
## Getting Started
Follow these instructions to get a local copy up and running for development and testing purposes.
### Prerequisites
- Node.js (v18 or later)
- npm
- A MongoDB account and a connection string.
- A Twilio account with a WhatsApp-enabled phone number.
### Installation & Configuration
1. **Clone the repository:**
```bash
git clone
cd
```
2. **Install dependencies:**
```bash
npm install
```
3. **Set up environment variables:**
Create a …