# Visit Rwanda AI – Next.js Conversational Travel Assistant 🇷🇼
A modern AI-powered chatbot for Rwanda tourism, built with Next.js.
Features chat, voice-to-voice mode, and a beautiful UI for travel planning and on-the-ground assistance.
## Features
- Conversational AI for Rwanda travel, culture, food, events, and more
- **Voice Mode:** Hands-free, continuous conversation (listen, speak, listen…)
- Text chat with suggestions and quick actions
- Speech-to-text and text-to-speech (browser-based)
- Responsive, professional UI with background imagery
- Gemini API integration
## Getting Started
First, run the development server:
```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```
Open
localhost with your browser to see the result.
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
This project uses `next/font` to automatically optimize and load Geist, a new font family for Vercel.
## Usage
- **Text Chat:** Type your question and press Send.
- **Voice Mode:** Click the floating microphone button (bottom right) for a hands-free, continuous voice conversation with the AI.
- **Suggestions:** Use quick suggestion buttons for common travel topics.
## Environment Setup
1. Copy `.env.example` to `.env.local` and add your Gemini API key:
```
GEMINI_API_KEY=your_google_gemini_api_key
```
2. Make sure your `next.config.js` allows Unsplash images:
```js
images: {
domains: ["images.unsplash.com"];
}
```
## Project Structure
- `app/page.tsx` – Main chat UI and voice mode overlay
- `app/api/chat/route.ts` – API route for Gemini AI chat
- `public/` – Static assets
## Tech Stack
- Next.js (App Router)
- React
- Tailwind CSS
- Google Gemini API (v1beta)
- Browser SpeechRecognition & SpeechSynthesis
## Learn More
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial. …