Skip to content

Repository files navigation

Kaveon — Talk to your data.

Connect your databases. Ask anything. Get instant answers with interactive charts — powered by a deterministic engine, not an LLM.

Deploy License: MIT Live Demo

Try It · Documentation · White Paper · Architecture


How It Works

You type a question. Kaveon figures out which dataset to query, generates SQL, executes it, picks the right chart type, and renders the answer inline — with an intelligent summary.

You: "Show confirmed cases by country"

Kaveon: Found 195 results. Top 3: United States (103.8M),
        India (45.0M), France (39.9M).
        [bar chart rendered inline]

No LLM. No API key. A deterministic template-based NL→SQL engine that parses natural language patterns, matches them against your schema metadata, and builds SQL from templates. Instant, free, works offline.


What You Get

Conversational querying Type questions in plain English. Kaveon generates SQL, executes it, renders charts inline, and explains the results.
37 chart types Bar, line, area, pie, scatter, heatmap, funnel, gauge, treemap, waterfall, calendar, 3D globe, and more. All interactive, all dark-mode aware.
Dashboard builder Drag-and-drop canvas with resizable tiles, cross-chart filtering, shared filter bar, auto-refresh, and publishing.
SQL Lab Monaco editor (VS Code-grade) with autocomplete, multi-tab sessions, query history, result caching, and inline AI.
Semantic datasets Define dimensions, metrics, and joins once. Reuse across unlimited charts. Kaveon generates the SQL.
Multi-source Microsoft Fabric SQL, Azure SQL, PostgreSQL, MySQL, StarRocks. Connect them all, query across them.
Self-hosted Your infrastructure, your data, your rules. MIT licensed.

Architecture

Browser → Vercel (kaveon-web)
              ↓ /api/kaveon/* proxy
         Azure Container Apps (kaveon-api)
              ↓ SQL
         Your databases (Fabric, Azure SQL, PostgreSQL, MySQL)

Two services. One monorepo.

Service Stack Deploy
kaveon-web Next.js 15, React 19, TypeScript, ECharts Vercel
kaveon-api FastAPI, Python 3.11, psycopg2, pyodbc Azure Container Apps

Auth is NextAuth (Auth.js v5) — GitHub and Microsoft Entra ID. Role-based access: Viewer → Analyst → Editor → Admin.

Infrastructure as code: Bicep templates for Azure resources.


Quick Start

git clone https://github.com/PruthviProdduturi/Kaveon.git
cd Kaveon

# Frontend
pnpm install
pnpm --filter kaveon-web dev          # localhost:3000

# Backend
cd apps/kaveon-api
pip install -r requirements.txt
python main.py                         # localhost:8080

Configure .env at the repo root with your database connection. See Setup Guide for full deployment.


Documentation

Guide Description
Architecture System design, data flow, auth model
NL→SQL White Paper How the conversational engine works
Charts 37 chart types, dark mode, ECharts config
Dashboards Builder, filters, cross-filtering, publishing
SQL Lab Monaco editor, query execution, caching
Data Sources Connecting databases
Deployment Vercel + Azure Container Apps + Azure PostgreSQL setup

Project Structure

Kaveon/
├── apps/
│   ├── kaveon-web/          Next.js frontend
│   └── kaveon-api/          FastAPI backend
├── packages/
│   └── types/               Shared TypeScript types
├── infra/
│   └── bicep/               Azure IaC templates
├── docs/                    Guides + white paper
├── scripts/                 Migration + utilities
└── demo/                    Data loading scripts

Contributing

See CONTRIBUTING.md.


License

MIT — built by Pruthvi Prodduturi.

About

Lets TALK - Connect your databases. Ask anything. Get instant answers with interactive charts — powered by a deterministic engine, not an LLM.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages