A comprehensive demonstration platform showcasing AI-powered delivery management for customers, businesses, and drivers with real-time reasoning visualization.
- 4 Visualization Modes: Activity Feed, Timeline View, Flow Diagram, Debug Panel
- Real-time Insights: See Claude's thinking process as it happens
- MCP Tool Monitoring: Track every tool call with inputs and outputs
- System Prompt Viewer: Inspect the prompts sent to the AI
- Conversational AI assistant for ordering food
- Real-time order tracking
- Smart menu recommendations
- Chat-based ordering experience
- Multi-customer chat management
- Order queue with status updates
- Complete AI reasoning panel with all visualization modes
- Real-time synchronization across all customers
- Delivery queue management
- AI-powered route optimization
- Earnings tracking
- Real-time navigation assistance
- Frontend: Next.js 14, TypeScript, Tailwind CSS
- UI Components: shadcn/ui, React Flow
- AI: Anthropic Claude API with streaming
- Real-time: Socket.io for WebSocket communication
- State Management: Zustand
- Backend: Express.js, Node.js
- Node.js 18+ installed
- npm or yarn
- Anthropic API key
-
Clone and navigate to the project
cd wolt-demo -
Install dependencies
npm install
-
Configure environment variables
Edit
.env.localfile in the root directory and add your Anthropic API key:ANTHROPIC_API_KEY=your_api_key_here NEXT_PUBLIC_SOCKET_URL=http://localhost:3001 PORT=3001
-
Start the development servers
You'll need to run two servers:
Terminal 1 - Backend Server:
npm run server
Terminal 2 - Next.js Frontend:
npm run dev
Or run both concurrently:
npm run dev:all
-
Open your browser
Navigate to
http://localhost:3000
-
Landing Page: Choose which interface to explore
- Customer: Experience AI-powered ordering
- Business: Manage orders and see AI reasoning
- Driver: Handle deliveries with AI assistance
-
Customer Interface (
/customer)- Try: "Show me pizza places nearby"
- Try: "I want to order a burger with fries"
- Try: "Track my order"
-
Business Dashboard (
/business)- View multiple customer conversations
- Watch AI reasoning in real-time across 4 different views
- Manage orders and update statuses
- Switch between customers to see different conversations
-
Driver Interface (
/driver)- View active deliveries
- Update order statuses (Picked Up β Delivering β Delivered)
- Ask AI for route optimization
- Track earnings
The Business Dashboard includes a sophisticated AI reasoning panel with 4 views:
- Activity Feed: Stream of all AI events with detailed information
- Timeline View: Chronological visualization of the conversation
- Flow Diagram: Visual representation of tool calls and data flow
- Debug Panel: Raw JSON payloads and system prompts
10 delivery-specific tools available to Claude:
search_menu: Search restaurant menuscreate_order: Place new ordersupdate_order_status: Update order progressget_order_details: Retrieve order informationfind_nearest_driver: Find available driversoptimize_route: Calculate optimal delivery routessend_notification: Send user notificationscheck_restaurant_availability: Check if restaurants are openapply_discount: Apply promo codestrack_delivery: Real-time delivery tracking
wolt-demo/
βββ app/
β βββ customer/ # Customer interface
β βββ business/ # Business dashboard
β β βββ components/ # Business-specific components
β βββ driver/ # Driver interface
β βββ page.tsx # Landing page
βββ components/
β βββ ui/ # shadcn/ui components
β βββ shared/ # Shared components
βββ lib/
β βββ ai/ # AI integration
β βββ mcp/ # MCP tool definitions
β β βββ tools.ts # Tool schemas and mock implementations
β βββ socket/ # WebSocket client
β β βββ client.ts # Socket.io client wrapper
β βββ store/ # Zustand state management
β β βββ index.ts # Global app store
β βββ types/ # TypeScript types
β β βββ index.ts # Shared type definitions
β βββ demo-data.ts # Demo users, orders, conversations
β βββ utils.ts # Utility functions
βββ server/
β βββ index.ts # Express + Socket.io server
β βββ routes/ # API routes
β βββ ai-handlers/ # AI request handlers
βββ public/ # Static assets
- Open Customer interface
- Send: "I want to order pizza"
- Watch AI search menus and make recommendations
- Observe tool calls in Business dashboard's AI panel
- Open Business dashboard
- Select different customers from the sidebar
- Switch between visualization modes (Activity, Timeline, Flow, Debug)
- Watch real-time AI events as customers interact
- Open Driver interface
- Select an active delivery
- Update status: Ready for Pickup β Picked Up β Delivering β Delivered
- Ask AI for route optimization
| Variable | Description | Required |
|---|---|---|
ANTHROPIC_API_KEY |
Your Anthropic API key | Yes |
NEXT_PUBLIC_SOCKET_URL |
WebSocket server URL | Yes |
PORT |
Backend server port | No (default: 3001) |
NEXT_PUBLIC_APP_URL |
Frontend URL for CORS | No (default: http://localhost:3000) |
- Demo Data: The app uses mock data and simulated tool responses
- Real AI: Claude integration is real - you'll see actual AI responses
- WebSocket: Real-time updates work across all interfaces
- Production: This is a demo - add authentication, validation, and error handling for production use
- Ensure backend server is running on port 3001
- Check
NEXT_PUBLIC_SOCKET_URLin.env.local
- Verify
ANTHROPIC_API_KEYis set correctly - Check API quota and billing
- Look for errors in server console
- Change
PORTin.env.local - Update
NEXT_PUBLIC_SOCKET_URLaccordingly
MIT
- Built with Next.js
- Powered by Anthropic Claude
- UI components by shadcn/ui
- Icons by Lucide
Made with β€οΈ for demonstrating AI agent capabilities