MetricMind — Data & Metrics Assistant

Upload spreadsheets, ask questions about your data in plain English, and get AI-generated charts, tables, and insights — no SQL knowledge required.

React TypeScript FastAPI DuckDB Google Gemini Recharts SSE Streaming Docker Ubuntu VPS

What is MetricMind?

A conversational data analysis tool that turns spreadsheets into insights with natural language.

MetricMind is an AI-powered data and metrics assistant. Upload any CSV or Excel file, ask questions in plain English, and get instant answers with auto-generated charts, sortable data tables, and the SQL query behind each result.

Under the hood, your question is sent to an LLM (Google Gemini by default, with OpenAI and Anthropic also supported) along with the dataset schema. The LLM generates a SQL query, which is executed against an in-memory DuckDB analytical engine for blazing-fast results. It also picks the best chart type automatically — line charts for trends, bar charts for comparisons, pie charts for distributions, and scatter plots for correlations.

The app comes pre-loaded with three sample datasets — sales transactions, website analytics, and an employee survey — so you can start asking questions immediately without uploading anything.

How It Works

Two pipelines power MetricMind — one for data ingestion, one for querying.

Data Ingestion Pipeline

Upload CSV/Excel
Parse (pandas)
Infer Types
Register in DuckDB
Ready to Query

Query Pipeline (SSE Streaming)

Ask Question
LLM → SQL
Execute (DuckDB)
Pick Chart Type
Stream Results

How to Test

Follow these 6 steps to explore every feature of MetricMind.

1

Explore Pre-loaded Datasets

MetricMind comes with 3 seed datasets already loaded and ready to query. You'll see them in the sidebar when you open the app.

Pre-loaded datasets:
• Sales Data 2025 (products, regions, revenue, profit)
• Website Analytics (pages, visitors, bounce rates, conversions)
• Employee Survey (departments, satisfaction, tenure)
2

Ask a Question

Select a dataset from the sidebar, then type a natural-language question in the chat input. MetricMind will generate a SQL query, run it, and display the results with a chart, table, and the generated SQL.

Try these (Sales Data):
• "What was our total revenue in January?"
• "Which product had the highest profit?"
• "Show me revenue by region"
3

Explore the Result Tabs

Each answer appears with three tabs you can switch between — Chart, Table, and Query. The chart is auto-selected for the best visualization. The table lets you sort and filter rows. The query tab shows exactly what SQL was generated.

What you'll see: An interactive chart with the best visualization type auto-selected, a sortable data table with the raw results, and the generated SQL query with syntax highlighting.
4

Try Different Chart Types

The AI picks the best chart type based on your question. Try different questions to see bar charts, line charts, pie charts, and scatter plots.

Try these to see different charts:
• "Monthly sales trend" → Line chart
• "Revenue by region" → Pie chart
• "Compare product revenue" → Bar chart
• "Tenure vs satisfaction" (Employee Survey) → Scatter plot
5

Use Follow-Up Questions

After each answer, MetricMind suggests follow-up questions you can click to dive deeper into the data. This creates a natural conversation flow for data exploration.

Tip: Click any suggested follow-up to continue exploring without typing. The AI considers prior context when generating each answer.
6

Upload Your Own Data

Click the upload button in the sidebar and drag & drop a CSV or Excel file (up to 50 MB). It will be parsed, loaded into DuckDB, and ready to query immediately.

Tip: Try uploading a spreadsheet from your own work — monthly expenses, project tracking, survey results — and ask questions about it in plain English.

Key Features

Everything built into MetricMind.

Natural Language Queries

Ask questions about your data in plain English. The AI converts your question to SQL and returns results instantly.

Smart Chart Selection

The AI automatically picks the best chart type — line for trends, bar for comparisons, pie for distributions, scatter for correlations.

Interactive Visualizations

Hover for tooltips, click legends to toggle series, and explore results across Chart, Table, and Query tabs.

DuckDB SQL Engine

In-memory analytical database for blazing-fast query execution. Supports window functions, CTEs, aggregations, and date formatting.

Real-Time Streaming

Server-Sent Events stream each processing step live — "Analyzing...", SQL generated, results rendered — for instant feedback.

CSV & Excel Upload

Drag & drop CSV or Excel files up to 50 MB. Data is parsed, types inferred, and loaded into DuckDB instantly.

Follow-Up Suggestions

After each answer, the AI suggests relevant follow-up questions to help you explore your data deeper with one click.

Multi-Provider LLM

Supports Google Gemini, OpenAI GPT-4o, and Anthropic Claude. Switch providers without changing any code.