cr
Data

Duck-UI: DuckDB Analytics Entirely in Your Browser

How Duck-UI puts a full DuckDB environment in your browser tab — no server, no install, just SQL and your data.

#duckdb#wasm#react#analytics#open-source

Duck-UI: DuckDB Analytics Entirely in Your Browser

DuckDB changed how I think about analytics. It’s an in-process analytical database that handles CSV, Parquet, and JSON without any setup. But the command line isn’t for everyone, and sometimes you want a proper interface. That’s why I built Duck-UI.

Zero Server, Full Power

Duck-UI runs entirely in the browser using DuckDB’s WebAssembly build. When you open duckui.com, DuckDB boots up in your tab. Your data never leaves your machine. There’s no backend to deploy, no credentials to manage, no cold starts to wait for.

This isn’t a toy demo. The WASM build of DuckDB is remarkably capable — it handles millions of rows without breaking a sweat. I’ve used it to explore production Parquet exports, analyze CSV dumps, and prototype queries before running them against larger systems.

The Interface

SQL Editor — Syntax highlighting and auto-completion that understands your schema. Write a query, see results instantly in a sortable, filterable table. It’s the tight feedback loop that makes exploratory analysis productive.

Data Import — Drag and drop CSV, JSON, Parquet, or Arrow files. Duck-UI creates tables from them automatically. You can also point it at URLs — load a Parquet file from S3 or a CSV from a public dataset without downloading anything first.

Data Explorer — Browse databases, schemas, and tables visually. Preview data, check column types, understand structure before writing a single query.

Query History — Every query you run is saved locally. Search through past queries, re-execute them, iterate. It’s small but it saves a surprising amount of time.

Why Not Just Use the CLI?

The CLI is great for scripted workflows. Duck-UI is for exploration. When I’m trying to understand a new dataset, I want to see the schema visually, preview rows, iterate on queries with instant feedback, and import files without writing CREATE TABLE statements. Different tools for different moments.

Duck-UI also makes DuckDB accessible to people who don’t live in the terminal. Data analysts, product managers, anyone who knows SQL but doesn’t want to install tools — they can just open a browser tab.

Under the Hood

The stack is straightforward: React for the UI, Zustand for state management, Tailwind CSS for styling, and DuckDB WASM doing all the heavy lifting. The entire app is static files — you can host it on any CDN.

For teams that want to connect to external DuckDB instances, there’s support for that via environment variables. But the default experience is fully local, fully private.

561 Stars and Counting

Duck-UI has grown steadily since launch, now at v0.0.37. The community has been great — bug reports, feature requests, and contributions keep it moving. The project is sponsored by Ibero Data and qxip.

If you work with data and haven’t tried DuckDB in the browser yet, give Duck-UI a spin. It takes about three seconds to get started.

← All posts