HomeMart is a household products web app featuring an AI voice assistant (Alex) powered by Retell AI and a text chat assistant powered by Google Gemini. Customers can browse 20 curated household products and get personalized recommendations through natural voice or text conversations.
- Voice AI Assistant — Talk to Alex via Retell AI for real-time voice product recommendations
- Text Chat Assistant — Gemini-powered chat for product queries, comparisons, and suggestions
- Product Catalog — 20 household products from trusted brands (Dyson, Samsung, KitchenAid, etc.)
- n8n Middleware — Workflow automation handles Retell API calls securely
- Responsive Design — Works on desktop and mobile devices
| Layer | Technology |
|---|---|
| Frontend | HTML, CSS, JavaScript |
| Backend | Node.js, Express.js |
| Voice AI | Retell AI (Web SDK + API) |
| Text Chat | Google Gemini 2.5 Flash |
| Middleware | n8n (self-hosted workflow automation) |
┌─────────────────────────────────────────────────┐
│ Browser │
│ ┌───────────┐ ┌────────────┐ ┌────────────┐ │
│ │ Product │ │ Voice Call │ │ Text Chat │ │
│ │ Grid │ │ (Retell SDK)│ │ (Gemini) │ │
│ └───────────┘ └─────┬──────┘ └─────┬──────┘ │
└────────────────────────┼───────────────┼────────┘
│ │
POST /api/ POST /api/
create-web-call chat
│ │
┌──────────▼───────────────▼────────┐
│ Express.js Server │
│ (server.js) │
└──────────┬───────────────┬────────┘
│ │
n8n Webhook Gemini API
│
┌──────────▼────────────────────────┐
│ n8n Workflow │
│ Webhook → HTTP Request (Retell) │
└──────────┬────────────────────────┘
│
┌──────────▼────────────────────────┐
│ Retell AI API │
│ create-web-call → access_token │
└───────────────────────────────────┘
homemart/
├── index.html # Main HTML page
├── main.js # Frontend JS (Retell SDK, products, chat)
├── styles.css # Styling
├── server.js # Express backend (proxy + chat API)
├── household_products.csv # Product data source
├── package.json # Dependencies
├── .env # Environment variables (not committed)
└── .gitignore # Git ignore rules
- Node.js 18+
- n8n instance (self-hosted or cloud)
- Retell AI account with API key
- Google Gemini API key
# Clone the repository
git clone https://github.com/alfredang/homemart.git
cd homemart
# Install dependencies
npm installCreate a .env file in the project root:
N8N_WEBHOOK_URL=your_n8n_webhook_url
GEMINI_API_KEY=your_gemini_api_keynpm startOpen http://localhost:3000 in your browser.
- Browse Products — View 20 household products with prices and descriptions
- Voice Chat — Click "Talk to Alex" to start a voice conversation via Retell AI
- Text Chat — Type messages to get AI-powered product recommendations via Gemini
- n8n Flow — Voice calls are routed through n8n workflow for secure API key management
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Retell AI — Voice AI platform
- n8n — Workflow automation
- Google Gemini — Text generation AI
- Express.js — Web framework
