Skip to content

oneKn8/soniq

Repository files navigation

Soniq

AI voice agents that answer your business phones.
Book appointments. Take orders. Handle FAQs. Route calls. 24/7.

Quick Start  Architecture  Features

TypeScript Python Next.js Hono LiveKit Docker License


~450ms
voice-to-voice
27
industry presets
3
LLM providers
Multi-tenant
architecture

Architecture

    Phone Call
        |
        v
  +-----------+
  | SignalWire |  SIP trunking / WebSocket streaming
  +-----+-----+
        |
        v
  +-----------+
  | Deepgram  |  Speech-to-Text .............. ~150ms
  +-----+-----+
        |
        v
  +-----------+
  | LLM       |  Gemini / OpenAI / Groq ...... ~200ms TTFT
  | + Tools   |  booking, FAQ, routing, CRM
  +-----+-----+
        |
        v
  +-----------+
  | Cartesia  |  Text-to-Speech .............. ~40ms
  +-----+-----+
        |
        v
   AI Response   ........................ ~450ms total

Three services, one docker compose up:

Service Stack What it does
soniq-api Hono + TypeScript + Node 20 REST API, voice pipeline, business logic, scheduled jobs
soniq-dashboard Next.js 15 + React 19 + Tailwind Tenant dashboard, live call monitoring, CRM, setup wizard
soniq-agent Python + LiveKit Agents SDK Voice agent worker with tool calling

Features

Call Handling -- Appointment booking with calendar sync (Google, Outlook, Calendly) / order taking with verification / FAQ from tenant knowledge base / smart routing with full conversation context / voicemail with transcription

Automation -- SMS confirmations via Twilio / post-call review requests / follow-up scheduling / engagement scoring / callback queue

CRM -- Contacts with call history / deals pipeline / task management / sentiment detection for priority escalation

Multi-tenant -- Per-tenant config, prompts, phone numbers, and industry presets / tenant isolation at database level / white-label ready

27 industry presets
Category Industries
Hospitality Hotels, Restaurants, Cafes, Vacation Rentals, Event Venues
Healthcare Medical Clinics, Dental, Chiropractic, Veterinary, Physical Therapy
Automotive Dealerships, Auto Service, Car Rentals, Body Shops, Tire Centers
Professional Law Firms, Accounting, Real Estate, Consulting, Financial
Personal Care Hair Salons, Spas, Nail Studios, Gyms, Yoga Studios
Property Contractors, Plumbing, HVAC, Cleaning, Landscaping

Each preset includes custom terminology, intents, appointment types, escalation triggers, and voice prompts.

Tech stack details
Layer Technology Role
Telephony SignalWire SIP trunking, WebSocket audio streaming
STT Deepgram Nova-2 Streaming speech-to-text, phone-optimized
LLM Gemini / OpenAI / Groq Multi-provider fallback with tool calling
TTS Cartesia Sonic Streaming text-to-speech synthesis
Voice Agent LiveKit Agents SDK Python agent worker with Silero VAD
Database Supabase (PostgreSQL) Multi-tenant data, auth, real-time
Frontend Next.js 15, shadcn/ui, Radix App Router, SSR, responsive dashboard
Backend Hono.js, TypeScript Lightweight, fast, middleware-based API

Quick Start

Prerequisites

Setup

git clone https://github.com/oneKn8/soniq.git
cd soniq
cp .env.example .env
# Edit .env with your API keys

Option A -- Dev script (recommended)

./dev.sh             # starts API + dashboard
./dev.sh --api       # API only
./dev.sh --fe        # dashboard only

Option B -- Manual

# terminal 1
cd soniq-api && npm install && npm run dev      # localhost:3100

# terminal 2
cd soniq-dashboard && npm install && npm run dev # localhost:3000

Option C -- Docker

docker compose up

Environment Variables

See .env.example for the full list. Key groups:

Group Variables
Database SUPABASE_URL SUPABASE_ANON_KEY SUPABASE_SERVICE_ROLE_KEY
LLM GEMINI_API_KEY OPENAI_API_KEY GROQ_API_KEY
Voice DEEPGRAM_API_KEY CARTESIA_API_KEY
Telephony SIGNALWIRE_PROJECT_ID SIGNALWIRE_API_TOKEN SIGNALWIRE_SPACE_URL
LiveKit LIVEKIT_API_KEY LIVEKIT_API_SECRET

Project Structure

soniq/
├── soniq-api/                  # Backend
│   ├── src/
│   │   ├── index.ts            # Hono entry point
│   │   ├── routes/             # REST endpoints
│   │   ├── services/           # Voice pipeline, LLM, calendar, CRM
│   │   ├── middleware/         # Auth, rate limiting
│   │   ├── jobs/               # Scheduled automation
│   │   └── config/             # Industry prompts, pipeline config
│   ├── migrations/             # SQL migrations
│   └── Dockerfile
│
├── soniq-dashboard/            # Frontend
│   ├── app/
│   │   ├── (auth)/             # Login, signup, password reset
│   │   └── (dashboard)/        # All dashboard pages
│   ├── components/             # UI components
│   ├── lib/                    # API client, utilities, presets
│   └── Dockerfile
│
├── soniq-agent/                # Voice Agent
│   ├── agent.py                # LiveKit agent worker
│   ├── tools.py                # Booking, FAQ, routing tools
│   └── Dockerfile
│
├── docker-compose.yml
├── nginx.conf
├── dev.sh
└── .env.example

License

Apache License 2.0



Built with Hono, Next.js, LiveKit, Deepgram, Cartesia, and Supabase

About

AI voice agents for business phone handling. Sub-500ms latency, multi-tenant, 27 industry presets.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors