← Back to work
Featured project

Speech-to-Dashboard: AI Report Generation

Built an internal tool that lets my team narrate requirements to AI and receive polished, interactive HTML dashboards — far beyond anything Tableau or Power BI can produce. The output is live in production across 10+ enterprise clients.

OpenAI APIClaude APISnowflakePython

Outcomes

Hours → minutes to build a dashboard

10+ enterprise clients on the output

Replaced Tableau licences entirely

The Problem

Traditional BI tools like Tableau and Power BI produce dashboards that look the same, feel the same, and require the same tedious manual build process. An analyst would spend hours configuring charts, formatting layouts, and writing narrative — then the client would ask for changes and the cycle repeated. The output was never as interactive or as compelling as what was actually possible.

The Approach

01

Built a semantic catalogue of all 200+ dbt models so the AI understands exactly what data exists, what each metric means, and what business rules apply.

02

Created a natural language → SQL pipeline using OpenAI function calling, grounded in the semantic layer to prevent hallucination and ensure reliable query generation.

03

Added a Claude-powered narrative layer that reads the query output and writes executive commentary in the voice of a senior analyst — not a summary of numbers, but actual insight.

04

The output is an interactive HTML dashboard — rich, custom-designed, and specific to the client's brand and use case. Nothing off-the-shelf about it.

05

My team uses the tool to iterate on requirements in real time. The client sees the end result: a living, AI-queryable dashboard where they can ask follow-up questions with guardrails on what data they're permitted to see.

The Result

What used to take hours now takes minutes — and the output is better. The time saved isn't in cutting corners; it's in not having to do tedious formatting work when the data model underneath is already solid. Several clients have retired Tableau and Power BI licences. The magic has always been in the clean semantic layer. AI without that foundation is just automating bad data faster.

Full Stack

OpenAI APIClaude API (Anthropic)SnowflakePythonHTML/CSS

Interested in something similar?

Let's talk →