Maro's Coffee AI Chatbot
AI-powered conversational chatbot simulating a friendly coffee shop cashier with dynamic menu management
Project Overview
A web application that simulates a friendly cashier experience for Maro's Coffee shop using AI-powered conversation. The chatbot interacts with customers, takes orders, provides menu information, and handles the complete ordering process through natural language conversations.
Key Features
- • AI-Powered Conversations: Google Gemini API integration for natural, friendly cashier interactions
- • Dynamic Menu System: Professional drink menu with types, sizes, and prices loaded from database
- • Session-Based Tracking: Customer session management for personalized ordering experience
- • Token Management: Intelligent conversation context management with token counting
- • Visual Menu Display: Dynamic image loading from Unsplash based on drink names
- • Real-Time Chat: Interactive chat interface with AI responses and order confirmation
Technical Stack
Django Python MongoDB Google Gemini AI HTML/CSS/JavaScript SQLite
System Architecture
Full-stack Django application with intelligent AI integration and database-driven menu management:
- • Django Framework: MVC architecture with robust URL routing and template rendering
- • Database Models: DrinkType, Customer, and ChatMessage models with proper relationships
- • AI Integration: Google Gemini API for generating context-aware, friendly responses
- • Session Management: Django sessions for tracking customer interactions and orders
- • Frontend Interface: Responsive web interface with chat bubbles and menu display
Database Models
- • DrinkType: Stores drink names, sizes (Small/Medium/Large), and corresponding prices
- • Customer: Tracks customers via session keys for personalized experience
- • ChatMessage: Stores complete conversation history with token counts for context management
AI Chat Capabilities
- • Natural Order Taking: Understands drink preferences, sizes, and customizations
- • Menu Assistance: Provides information about available drinks, sizes, and prices
- • Order Confirmation: Summarizes orders and confirms details before finalizing
- • Context Awareness: Maintains conversation context across multiple interactions
- • Friendly Personality: Simulates a cheerful, helpful coffee shop cashier
Setup & Deployment
- • Environment Setup: Virtual environment with pip dependencies from requirements.txt
- • API Configuration: Google Gemini API key setup for AI responses
- • Database Migration: Django migrations for model setup
- • Development Server: Run locally at http://127.0.0.1:8000/
- • Menu Management: Dynamic drink database with easy updates
User Experience
- • Visual Appeal: Professional coffee shop interface with appetizing drink images
- • Intuitive Chat: Simple chat interface for natural conversations
- • Menu Visibility: Clear display of all drink options and pricing
- • Responsive Design: Works seamlessly on desktop and mobile devices