I built Duck-UI, a web-based SQL editor that runs DuckDB entirely in your browser via WebAssembly. No backend required.
The Problem: Every time I needed to query csv, parquet, or even to play with SQL, I had to either: (a) spin up a Jupyter notebook (b) use the CLI (c) upload to a hosted service.
Friction at every step (TOO MUCH to load a csv or even to test some sql (study)...
The Solution: DuckDB's WASM runtime lets us run SQL analysis client-side. Load CSV/JSON/Parquet files from disk or URL, write SQL, get results instantly. Data stays on your machine. What It Does:
SQL editor with autocomplete & syntax highlighting Import CSV, JSON, Parquet, Arrow (local or remote URLs) Query history, keyboard shortcuts, theme toggle Persistent storage via OPFS (data survives browser refresh) Optional: Connect to external DuckDB servers One-liner Docker deployment or Node 20+ dev server
Technical Details:
DuckDB compiled to WASM; query execution in-browser OPFS-backed persistence Apache 2.0 licensed Runs on Chrome 88+, Firefox 79+, Safari 14+
Use Cases:
Learning SQL without setting up databases Ad-hoc data exploration (CSV → SQL in seconds) Quick prototyping before shipping to production Privacy-conscious workflows (no data leaves your browser)
GitHub: https://github.com/ibero-data/duck-ui Live Demo: https://demo.duckui.com Quick Start: docker run -p 5522:5522 ghcr.io/ibero-data/duck-ui:latest
Would love feedback on: (1) Use cases I'm missing (2) Performance bottlenecks you hit (3) Features that would make this your default SQL scratchpad.
By CSDude 18 hours ago
By mrs6969 18 hours ago
By jasonjmcghee 16 hours ago
By ludicrousdispla 14 hours ago
By dkdcio 14 hours ago
By ludicrousdispla 14 hours ago
By hamandcheese 13 hours ago
By nirav72 16 hours ago
By Rhubarrbb 15 hours ago
By curtisblaine 10 hours ago
By mritchie712 18 hours ago
By adsharma 10 hours ago
By geysersam 12 hours ago
By benrutter 12 hours ago
By jsight 16 hours ago
By curiousgal 18 hours ago
By mritchie712 17 hours ago
By fluxkernel 15 hours ago
By mlnj 14 hours ago
By matsonj 12 hours ago
By mgaunard 18 hours ago
By debazel 14 hours ago
By caioricciuti 13 hours ago
By joshmn 18 hours ago
By caioricciuti 17 hours ago
By mrtimo 3 hours ago
By alex_hirner 17 hours ago
By texodus 15 hours ago
By RyanHamilton 15 hours ago
By matsonj 12 hours ago
By cjonas 16 hours ago
By caioricciuti 15 hours ago
By cjonas 12 hours ago
By cjonas 12 hours ago
By ludicrousdispla 14 hours ago
By dsamy 8 hours ago
By mosselman 18 hours ago
By caioricciuti 18 hours ago
By spooky_deep 18 hours ago
By dav43 18 hours ago
By lolive 16 hours ago
By VHRanger 16 hours ago
By lolive 13 hours ago
By chrisweekly 18 hours ago
By rustyconover 12 hours ago
By cat-whisperer 11 hours ago
By gamerrk 18 hours ago
By caioricciuti 17 hours ago
By mgaunard 18 hours ago
By caioricciuti 18 hours ago
By jeffbee 11 hours ago
By mrtimo 3 hours ago
By jeffbee 2 hours ago
By tonyhart7 15 hours ago
By ludicrousdispla 14 hours ago
By rustyconover 12 hours ago