- Express backend with Replicate API proxy (chat, models, account, search) - React + Vite + Tailwind frontend with custom Midnight Violet color scheme - @mention autocomplete to route messages to specific models - Parallel multi-model queries with model selection in sidebar - DuckDuckGo web search context injection - Model manager UI (add/edit/remove Replicate models) - Per-model system instructions per conversation - Replicate account info display in sidebar - Conversation history with local persistence (Zustand) - Full Docker deployment (backend + nginx-served frontend) - Montserrat + Poppins fonts Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
69 lines
2.0 KiB
Markdown
69 lines
2.0 KiB
Markdown
# IQAI — Multi-Model AI Dashboard
|
|
|
|
A sleek AI chat dashboard powered by [Replicate](https://replicate.com). Chat with multiple AI models simultaneously, tag them with @mentions, and augment responses with live web search.
|
|
|
|
## Features
|
|
|
|
- **Multi-model chat** — Select multiple models and query them in parallel
|
|
- **@mention routing** — Type `@claude`, `@grok`, `@gemini` to direct messages to specific models
|
|
- **Web search** — Inject DuckDuckGo search results as context before querying models
|
|
- **Model manager** — Add, edit, or remove Replicate models from the UI
|
|
- **System instructions** — Per-model system prompts per conversation
|
|
- **Account info** — View your Replicate account details in the sidebar
|
|
- **Conversation history** — Persisted locally across sessions
|
|
|
|
## Quick Start (Docker)
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
# Edit .env and set your REPLICATE_API_TOKEN
|
|
|
|
docker compose up --build
|
|
# Open http://localhost
|
|
```
|
|
|
|
## Development
|
|
|
|
```bash
|
|
# Backend
|
|
cd backend && npm install && node server.js
|
|
|
|
# Frontend (in another terminal)
|
|
cd frontend && npm install && npm run dev
|
|
```
|
|
|
|
## Adding Models
|
|
|
|
Click **Manage Models** in the sidebar. Paste any Replicate model API URL to auto-fill the fields:
|
|
|
|
```
|
|
https://api.replicate.com/v1/models/owner/model-name/predictions
|
|
```
|
|
|
|
## Default Models
|
|
|
|
| Model | Tag | Type |
|
|
|-------|-----|------|
|
|
| Claude Opus 4.6 | @claude | Text |
|
|
| Grok 4 | @grok | Text |
|
|
| Gemini 3.1 Pro | @gemini | Text |
|
|
| DeepSeek R1 | @deepseek | Text |
|
|
|
|
## Architecture
|
|
|
|
```
|
|
iqai/
|
|
├── backend/ Express API server (port 3001)
|
|
│ ├── routes/ chat, models, account, search
|
|
│ └── data/ models.json (persisted config)
|
|
├── frontend/ React + Vite + Tailwind
|
|
│ └── src/
|
|
│ ├── components/
|
|
│ ├── store/ Zustand state management
|
|
│ └── utils/ API client
|
|
├── docker-compose.yml
|
|
├── Dockerfile.backend
|
|
├── Dockerfile.frontend
|
|
└── nginx.conf
|
|
```
|