An AI-powered chat widget that any business can embed on their website. It answers visitor questions using the business's own information, captures leads automatically, and gives business owners a simple dashboard to manage it all.
Built by DelVoxe.
- A business owner signs up and describes their business (services, FAQs, pricing) in a simple dashboard
- They get a one-line embed script to add to their website
- Visitors chat with an AI assistant that answers using only that business's information
- Every conversation is saved as a lead (name, email, message) and visible on the dashboard
- If the AI doesn't have an answer, it says so honestly instead of making one up
| Layer | Technology |
|---|---|
| Backend | Node.js, Express |
| Database | PostgreSQL |
| Authentication | JWT, bcrypt password hashing |
| AI | Google Gemini API |
| Dashboard | React (Vite) |
| Embeddable widget | Vanilla JavaScript |
chatcore/
├── code/
│ ├── backend/ → API server, database, authentication, AI integration
│ ├── dashboard/ → React dashboard for business owners
│ └── widget/ → Embeddable chat widget (plain JS)
├── planning/ → Requirements and architecture docs
├── design/ → Design references
└── notes/ → Development notes
- Passwords are hashed with bcrypt, never stored in plain text
- Authentication uses JWT tokens
- Each business's data (info, leads) is isolated — no business can access another's data
- API keys and secrets are kept in environment variables, never committed to the repository
Core features are complete and working:
- Secure signup/login
- Business dashboard (add/update business info)
- Embeddable AI chat widget
- Lead capture
- Leads visible on dashboard
- Real AI responses grounded in business data
- Automatic website content import (no manual data entry)
- Multiple knowledge sources (PDF uploads, multiple pages)
- Custom widget branding per client
- Human handoff for unresolved conversations
- Multi-channel support (WhatsApp, Instagram)
Backend:
cd code/backend
npm install
# add a .env file with DATABASE_URL, JWT_SECRET, PORT, and GEMINI_API_KEY
node index.jsDashboard:
cd code/dashboard
npm install
npm run devWidget: open code/widget/test.html in a browser to test locally.