AI-powered trip planning system for tourists visiting Egypt using LLMs and RAG
# Ray7 Masr — AI-Powered Egypt Trip Planner (رايح مصر)
A modern web application that helps travelers plan unforgettable trips to Egypt using AI-driven recommendations, cultural insights, interactive maps, and a retrieval-augmented chatbot.
---
## Table of Contents
- About
- Features
- Screenshots
- Tech Stack
- Getting Started
- Prerequisites
- Installation
- Environment Configuration
- Database & Vector DB Initialization
- Run (Development)
- Project Structure
- AI & RAG Implementation
- Testing
- Deployment
- Contributing
- Bug Reports & Feature Requests
- Contact
---
## About
**Ray7 Masr (رايح مصر)** — *"Going to Egypt"* — is an AI-assisted trip planner focusing on Egyptian attractions, culture, cuisine, and logistics. The app combines:
- A recommendation engine (Gemini API + RAG)
- A contextual chatbot for travel questions
- Interactive maps and itineraries
- Community reviews and content moderation
---
## Features
- User authentication, profiles, and preferences (email/password + OAuth)
- Destination browsing with photos, maps and reviews
- AI-powered personalized itinerary generation (Gemini API + RAG)
- Context-aware chatbot backed by a vector database (Pinecone)
- Cultural & historical content (timelines, articles, language tips)
- Community features: reviews, forums and sharing
- Responsive UI and PWA-ready frontend
- Moderation: automated content checks, sentiment analysis
---
## Screenshots
### Home Page
### AI Chatbot
---
## Tech Stack
Frontend
- React 18.x, React Router
- Tailwind CSS
- React Context / Redux
- Google Maps JavaScript API
- Axios
Backend
- Node.js (v16+), Express
- JWT + bcrypt for auth, plus OAuth (Google / Facebook)
- Multer for file uploads
- PostgreSQL (v14+) — relational data
- Pinecone — vector store for embeddings + RAG
- ORM: Sequelize or Prisma
- Redis (optional, caching)
AI / ML
- Gemini API (LLM)
- RAG using Pinecone and embeddings
- Custom datasets for Egyptian sites, restaurants, cultural data
De …