Skip to content

indianic/parelay

Repository files navigation

Parelay

Self-hostable live chat, AI assistant, and video support you embed on any website with a single <script> tag.

Parelay gives you three surfaces from one codebase:

  • an embeddable widget (a Shadow-DOM parelay.js bundle) that drops onto any site;
  • an agent app — dashboard for live chat + video, plus an admin for sites, agents, and configuration;
  • a server — API, realtime bus, WebRTC signaling, and persistence.

When no agent is available, an AI assistant can answer visitors — using Anthropic, OpenAI, an Ollama-style endpoint, or any OpenAI-compatible provider — and a human can take over at any time. Call recordings can be transcribed.

Features

  • 💬 Real-time chat with typing, presence, and unread signals
  • 🎥 One-click video calls (WebRTC) with optional recording + transcription
  • 🤖 AI assistant with per-site provider/model/key and a system-wide default
  • 🎨 Per-site theming, launcher, copy, and pre-chat form — no redeploy
  • 🔒 Access control: allowed origins, IP allow/block lists, country blocking
  • 📧 Chat-end email summaries and outbound webhooks

Screenshots

Agent dashboard — live visitor monitor
Agent dashboard
Visitor chat widget — AI + human handoff
Visitor widget
Agent conversation — chat, video, and context
Agent conversation
Video call — visitor side
Video call
Agent screenshare view
Agent screenshare
Admin — per-site configuration
Admin

Quick start

Prerequisites: Node ≥ 20, pnpm 10, PostgreSQL ≥ 14 (see docs/getting-started.md for details).

git clone <your-fork>.git parelay && cd parelay
pnpm install

cp .env.example .env.local
# set at least: DATABASE_URL, JWT_SECRET,
#   CREDENTIALS_ENC_KEY  (openssl rand -base64 32),
#   and BOOTSTRAP_SUPERADMIN_EMAIL / _PASSWORD / _NAME

pnpm --filter @indianic/server db:migrate    # create the schema
pnpm dev                                      # run the whole stack

Then open:

URL What
http://localhost:5173 Demo site with the widget embedded
http://localhost:5175 Agent app + admin (log in with your bootstrap super-admin)
http://localhost:4000 Server (API + realtime)

Documentation

Full docs live in docs/:

For embedding the widget on a site, the Integration tab in the admin (Admin → Site → Integration) is the always-current, copy-paste reference.

Project structure

packages/
  shared/     types, event-bus contract, provider-agnostic AI client
  server/     Express API, Socket.IO, WebRTC signaling, Postgres/Drizzle
  widget/     embeddable visitor widget → parelay.js
  agent-app/  React dashboard + admin
  demo/       local harness that embeds the widget

Contributing

Issues and pull requests are welcome. Please run pnpm typecheck and pnpm lint before opening a PR. For security reports, contact us privately (see below) rather than filing a public issue.

License

Released under the MIT License. © 2026 IndiaNIC Infotech Ltd.

About & contact

Parelay is built and maintained by IndiaNIC Infotech Ltd.