AI Online Store
π€ AI-powered e-commerce platform with intelligent chat assistants, semantic product search via RAG, and real-time streaming charts. A proof-of-concept showcasing MCP servers and advanced AI integration patterns.
Installation
npx ai-online-storeAsk AI about AI Online Store
Powered by Claude Β· Grounded in docs
I know everything about AI Online Store. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
SmartShop AI - E-commerce Platform with AI Assistants
π Real-time Data Streaming & Interactive AI Charts
Experience the next generation of e-commerce admin interfaces. Ask questions in plain English and watch as complex data transforms into live, interactive charts right before your eyes.
Note: This project is a Proof of Concept (POC) demonstrating advanced AI integration patterns. It serves as a reference implementation for MCP servers, RAG, and streaming UI components. While fully functional, it uses simplified infrastructure (e.g., SQLite) and is not intended for production deployment as-is.
A modern e-commerce platform demonstrating cutting-edge AI technologies:
- π Interactive Charts Streaming - Watch datasets render into visualization in real-time
- β‘ Real-time Data - Live inventory and sales tracking via SSE (Server-Sent Events)
- π€ LLM Integration (Gemini/OpenAI) with streaming responses
- π§ Tool Calling for real-time data access
- π RAG (Retrieval Augmented Generation) for semantic product search
- π MCP Servers (Model Context Protocol) for modular AI tools
Architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β SmartShop AI β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β Frontend βββββΆβ API βββββΆβ Database β β
β β (React) β β (Express) β β (SQLite) β β
β ββββββββββββββββ ββββββββ¬ββββββββ ββββββββββββββββ β
β β β
β ββββββββββ΄βββββββββ β
β β β β
β βββββββΌββββββ ββββββββΌβββββββ β
β β LLM β β RAG β β
β β (Gemini) β β (Embeddings)β β
β βββββββββββββ βββββββββββββββ β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β MCP Servers β β
β β βββββββββββββ βββββββββββββ βββββββββββββββββββββ β β
β β β Products β β Orders β β Analytics β β β
β β βββββββββββββ βββββββββββββ βββββββββββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββ ββββββββββββββββββββ
β React Frontend ββββββΊβ Vite Proxy β
β (port 5173) β β /api β :3001 β
βββββββββββββββββββ ββββββββββ¬ββββββββββ
β
ββββββββββΌββββββββββ
β Express API β
β (port 3001) β
β - Auth/Shop β
β - Cart/Orders β
β - Chat (AI) β
ββββββββββ¬ββββββββββ
β
ββββββββββββββββββββΌβββββββββββββββββββ
β β β
βββββββββββΌβββββββ ββββββββββΌββββββββ βββββββββΌβββββββββ
β MCP Products β β MCP Orders β β MCP Analytics β
β (port 3010) β β (port 3011) β β (port 3012) β
β HTTP + SSE β β HTTP + SSE β β HTTP + SSE β
ββββββββββββββββββ ββββββββββββββββββ ββββββββββββββββββ
β β β
ββββββββββββββββββββΌβββββββββββββββββββ
β
ββββββββββΌββββββββββ
β SQLite DBs β
β smartshop.db β
β vectors.db β
ββββββββββββββββββββ
Tech Stack
| Layer | Technology |
|---|---|
| Runtime | Bun 1.3+ |
| Monorepo | Turborepo |
| Frontend | React 18 + Vite 6 + Tailwind CSS |
| Backend | Express.js |
| Database | SQLite (bun:sqlite) |
| LLM | Gemini 2.5 Flash / OpenAI GPT-4 |
| Embeddings | Gemini Embedding-001 (768 dimensions) |
| MCP | @modelcontextprotocol/sdk |
| Charts | Recharts |
Quick Start
Prerequisites
- Bun 1.3 or later
- Gemini API Key (free at Google AI Studio)
Installation
# Install dependencies
bun install
# Set up environment
cp apps/api/.env.example apps/api/.env
# Add your GEMINI_API_KEY to .env
Environment Variables
Create apps/api/.env by copying the example:
cp apps/api/.env.example apps/api/.env
Then edit .env with your API keys:
GEMINI_API_KEY=your-gemini-api-key
# OR
OPENAI_API_KEY=your-openai-api-key
JWT_SECRET=your-jwt-secret
PORT=3001
Running
bun run dev
# Frontend: http://localhost:5173
# API: http://localhost:3001
Test Accounts
| Role | Password | |
|---|---|---|
| Admin | admin@smartshop.com | admin123 |
| Customer | john@example.com | customer123 |
Features
AI Chat Assistant
- Streaming responses via SSE
- Role-based tools (customer vs admin)
- Conversation history
RAG Semantic Search
# Initialize (admin only)
curl -X POST http://localhost:3001/admin/rag/init -H "Authorization: Bearer <token>"
# Search
curl "http://localhost:3001/shop/semantic-search?q=something+for+gaming"
Streaming Charts (Admin)
- "Show me revenue by category" β Pie chart
- "Sales trend for the last 30 days" β Line chart
- "Top 5 selling products" β Bar chart
MCP Servers
| Server | Tools |
|---|---|
| Products | search_products, get_product_details, get_reviews |
| Orders | get_orders, get_order_details, get_spending |
| Analytics | get_dashboard, get_top_products, get_revenue |
Project Structure
ai-online-store/
βββ apps/
β βββ api/ # Express API
β β βββ src/
β β βββ services/
β β β βββ chat/ # Chat + tools
β β β βββ llm/ # Gemini/OpenAI
β β β βββ rag/ # Embeddings + Vector store
β β βββ routes/ # API endpoints
β βββ mcp-analytics/ # Analytics MCP Server
β βββ mcp-orders/ # Orders MCP Server
β βββ mcp-products/ # Products MCP Server
β βββ web/ # React frontend
βββ packages/shared/ # Shared types
Implementation Status
- Foundation (monorepo, database, API)
- Core Shop Features (products, cart, orders)
- AI Chat Infrastructure (LLM, tools, streaming)
- MCP Servers Integration
- RAG System (embeddings, semantic search)
- Streaming Charts & Visualizations
Scripts
bun run dev # Start all services
bun run build # Build for production
bun run clean # Clean build artifacts
License
MIT
