Skip to content

dubscode/travelbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✈️ TravelBot

AI-powered travel planning assistant that helps you discover destinations, plan itineraries, and get personalized travel recommendations through intelligent conversations.

PHP Symfony AWS Docker

🚀 Quick Start

Prerequisites

  • Docker & Docker Compose
  • PHP 8.1+ (for local development without Docker)
  • Node.js & npm (for assets)

Setup

# Clone and start with Docker
git clone https://github.com/dubscode/travelbot.git
cd travelbot
docker compose up -d

# Install dependencies and setup database
docker compose exec app composer install
docker compose exec app php bin/console doctrine:migrations:migrate
docker compose exec app php bin/console app:seed-destinations --count=10

# Install and build frontend assets
npm install && npm run build

# Access the application
open http://localhost:8000

✨ Features

  • 🤖 AI-Powered Conversations - Real-time streaming chat with travel expertise
  • 🌍 Destination Discovery - Personalized destination recommendations
  • 📝 Trip Planning - Multi-conversation travel planning sessions
  • 🔐 User Management - Secure authentication and conversation history
  • 📱 Responsive Design - Mobile-first interface with accessibility support
  • Real-time Streaming - Server-Sent Events for live AI responses

🧠 Intelligent Travel Recommendation Engine

The heart of TravelBot - A sophisticated RAG (Retrieval-Augmented Generation) system that delivers personalized travel recommendations through:

  • 🔍 Semantic Vector Search - Multi-stage search across destinations, resorts, and amenities using pgvector
  • 🎯 Smart Query Analysis - NLP-powered extraction of dates, budget, preferences, and requirements
  • 📊 Multi-Criteria Ranking - Intelligent scoring based on similarity, user preferences, popularity, and constraints
  • 🔄 Progressive Information Gathering - Dynamic follow-up questions to refine recommendations
  • 👤 Personalization Engine - Learns from interactions to improve future recommendations
  • 🌐 Context-Aware Responses - Temporal, seasonal, and conversation-stage awareness

📚 Complete RAG Documentation →

🏗️ Architecture

Backend: Symfony 7.3 with PHP 8.1+ (8.3 in Docker)
Frontend: Twig templates with Hotwire Turbo & Tailwind CSS 4
Database: PostgreSQL with pgvector extension (v15 local, Neon cloud in production)
AI Integration: Claude AI via AWS Bedrock
Infrastructure: AWS ECS Fargate with CDK deployment

📚 Complete Documentation →

🔧 Development

Database Commands

# Generate migration after entity changes
php bin/console make:migration

# Check migration status
php bin/console doctrine:migrations:status

# Run pending migrations
php bin/console doctrine:migrations:migrate

# Seed destinations data
php bin/console app:seed-destinations --clear

Asset Development

# Development build with watching
npm run dev

# Production build
npm run build

Docker Commands

# Start all services
docker compose up -d

# View logs
docker compose logs -f

# Execute commands in containers
docker compose exec app php bin/console <command>
docker compose exec app composer <command>

📖 Documentation

🔗 Live Demo

Production: https://travelbot.tech


Built with modern web technologies for scalable, AI-powered travel assistance.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors