frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB

https://demo.duckui.com
68•caioricciuti•2h ago
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.

Comments

mgaunard•2h ago
doesn't work well on phones, run query button is not visible.
caioricciuti•2h ago
Thank you for the feedback, adding to the roadmap right now!
CSDude•2h ago
There is an embedded one in DuckDB for a while now and it's great. I get the apeal of yours but this one is much easier to use for same cases:

https://duckdb.org/2025/03/12/duckdb-ui

mrs6969•2h ago
This is not a self hosted one though. You can not use default ui offline, you can not guarantee data safety
chrisweekly•2h ago
I haven't had a chance to play w this yet, but thank you for building and sharing this -- great writeup, sounds v useful and compelling!
gamerrk•2h ago
The autocomplete is really good, UI is snappy as well. Well done!
caioricciuti•1h ago
Thanksss, happy you liked, thanks for trying it out!
mritchie712•1h ago
Really excited about the future of DuckDB:

1. DuckLake is the best datalake spec and their team is improving on the extension rapidly.

2. With DuckDB WASM, you can make apps that would normally have 2 to 3 second latency for network calls work in < 200ms.

We use it as our built-in datalake at Definite and couldn't be happier with it.

0 - https://ducklake.select/

1 - https://www.definite.app/blog/ducklake

curiousgal•1h ago
I am curious is anyone using DuckDB in prod?
mgaunard•1h ago
of course, why wouldn't you?

I was using it even before it hit 1.0

mritchie712•57m ago
Yes, we run DuckDB + DuckLake in prod for https://www.definite.app/
spooky_deep•1h ago
When DuckDB queries across multiple sources (say, Postgres and a CSV) does it first load all data into DuckDB or is it smart enough to only pull minimal data needed for the query on the fly?
dav43•1h ago
possible, seems this is done in other modes.

quote - google ai mode:

"DuckDB offers robust capabilities for querying data stored partially on S3, particularly when dealing with Parquet files. This is achieved through several optimization techniques:

Predicate Pushdown: When you apply a WHERE clause to filter data, DuckDB can "push down" this filter directly into the Parquet file scan. If the Parquet file contains zonemaps (metadata about value ranges within columns), DuckDB can use this information to skip reading entire sections of the file that do not contain relevant data, significantly reducing the amount of data transferred from S3.

Projection Pushdown: When you select only specific columns in your SELECT statement, DuckDB automatically reads only those required columns from the Parquet file. This means you avoid downloading and processing unnecessary data, leading to faster queries and reduced S3 transfer costs.

HTTP Range Reads: DuckDB leverages HTTP range headers when interacting with S3 (or other object storage supporting range reads). This allows it to fetch only the necessary parts of the Parquet file, such as metadata or specific column chunks, rather than downloading the entire file."

lolive•17m ago
« How does it handle [multi-source] joins ? » is the obvious next question.
mosselman•1h ago
What is a duckdb server? I was under the impression there is no server in duckdb, just the client.
caioricciuti•1h ago
In theory there's none... DuckDB is like Sqlite, it's a file, but in this case it's 100% wasm so theres zero interaction with any "server", it's all on Browser. One example of DuckDB in server is mother duck... It makes .duckdb files "available" on the cloud.
joshmn•1h ago
This is cool, thanks. I use the embedded UI but I’m going to play around with yours too.

DuckDB is the single-most impressive piece of software I’ve used in my career. I’m mangling terabytes of parquets daily and it just handles them effortlessly; the bindings also also well-written.

caioricciuti•1h ago
TRUE! It's amazing and I have in other project too! The idea of of this app 100% in browser came from handling lots of CSV's from different people in my former company... Just to load in excel it took forever, then I came up with this, it made my life much easier, hope it makes yours too!
alex_hirner•44m ago
I'd love to make it work with flightsql or HTTP endpoints returning arrow IPC [0]! Did you consider using perspective for last-mile charting [1]? Building your own seems like a huge chunk of work. Well done!

[0] https://duckdb.org/docs/stable/clients/wasm/data_ingestion#a... [1] https://github.com/finos/perspective

Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB

https://demo.duckui.com
72•caioricciuti•2h ago•19 comments

Abandoned land drives dangerous heat in Houston, Texas A&M study finds

https://stories.tamu.edu/news/2025/10/07/abandoned-land-drives-dangerous-heat-in-houston-texas-am...
11•PaulHoule•24m ago•0 comments

The case for the return of fine-tuning

https://welovesota.com/article/the-case-for-the-return-of-fine-tuning
54•nanark•4h ago•17 comments

OpenAI researcher announced GPT-5 math breakthrough that never happened

https://the-decoder.com/leading-openai-researcher-announced-a-gpt-5-math-breakthrough-that-never-...
137•Topfi•2h ago•61 comments

Improving PixelMelt's Kindle Web Deobfuscator

https://shkspr.mobi/blog/2025/10/improving-pixelmelts-kindle-web-deobfuscator/
14•ColinWright•1h ago•0 comments

EQ: A video about all forms of equalizers

https://www.youtube.com/watch?v=CLAt95PrwL4
203•robinhouston•1d ago•52 comments

Uber will offer gig work like AI data labeling to drivers while not on the road

https://www.cnbc.com/2025/10/16/uber-will-offer-us-drivers-more-gig-work-including-ai-data-labeli...
57•bobertdowney•1h ago•41 comments

Lost Jack Kerouac story found among assassinated mafia boss' belongings

https://www.sfgate.com/sf-culture/article/lost-jack-kerouac-chapter-found-mafia-boss-estate-21098...
15•rmason•4d ago•7 comments

Titan submersible’s $62 SanDisk memory card found undamaged at wreckage site

https://www.tomshardware.com/pc-components/microsd-cards/tragic-oceangate-titan-submersibles-usd6...
377•WithinReason•2d ago•184 comments

A Tower on Billionaires' Row Is Full of Cracks. Who's to Blame?

https://www.nytimes.com/2025/10/19/nyregion/432-park-avenue-condo-tower.html
18•danso•1h ago•9 comments

Chen-Ning Yang, Nobel laureate, dies at 103

https://www.chinadaily.com.cn/a/202510/18/WS68f3170ea310f735438b5bf2.html
255•nhatcher•1d ago•61 comments

The Accountability Problem

https://www.jamesshore.com/v2/blog/2025/the-accountability-problem
94•FrancoisBosun•11h ago•37 comments

Jupyter Collaboration has a history slider

https://blog.jupyter.org/exploring-a-documents-timeline-in-jupyterlab-6084f96db263
33•fghorow•6d ago•8 comments

Pebble is officially back on iOS and Android

https://twitter.com/ericmigi/status/1979576965494710564
39•vlod•1h ago•5 comments

Root System Drawings

https://images.wur.nl/digital/collection/coll13/search
376•bookofjoe•1d ago•74 comments

How one of the longest dinosaur trackways in the world was uncovered in the UK

https://www.bbc.co.uk/news/resources/idt-5f8c77b0-92bc-40f2-bf21-6793abbe5ffe
30•6LLvveMx2koXfwn•5d ago•2 comments

BQN "Macros" with •Decompose (2023)

https://saltysylvi.github.io/blog/bqn-macros.html
15•ofalkaed•1w ago•3 comments

How to sequence your DNA for <$2k

https://maxlangenkamp.substack.com/p/how-to-sequence-your-dna-for-2k
204•yichab0d•18h ago•88 comments

Immix: A Mark-Region Garbage Collector (2008) [pdf]

https://www.steveblackburn.org/pubs/papers/immix-pldi-2008.pdf
3•djoldman•5d ago•0 comments

When you opened a screen shot of a video in Paint, the video was playing in it

https://devblogs.microsoft.com/oldnewthing/20251014-00/?p=111681
349•birdculture•2d ago•58 comments

How does Turbo listen for Turbo Streams

https://ducktypelabs.com/how-does-turbo-listen-for-turbo-streams/
72•sidk_•5d ago•8 comments

Why the open social web matters now

https://werd.io/why-the-open-social-web-matters-now/
186•benwerd•4d ago•114 comments

Flowistry: An IDE plugin for Rust that focuses on relevant code

https://github.com/willcrichton/flowistry
251•Bogdanp•23h ago•32 comments

Tinnitus Neuromodulator

https://mynoise.net/NoiseMachines/neuromodulationTonesGenerator.php
336•gjvc•21h ago•212 comments

./watch

https://dotslashwatch.com/
368•shrx•1d ago•103 comments

GoGoGrandparent (YC S16) Is Hiring Back End and Full-Stack Engineers

1•davidchl•12h ago

K8s with 1M nodes

https://bchess.github.io/k8s-1m/
244•denysvitali•2d ago•58 comments

What Happened in 2007?

https://whathappenedin2007.com/
86•AJRF•2h ago•41 comments

Secret diplomatic message deciphered after 350 years

https://www.nationalarchives.gov.uk/explore-the-collection/the-collection-blog/secret-diplomatic-...
164•robin_reala•2d ago•34 comments

Police Break Up Lego Theft Ring, Recovering Hundreds of Beheaded Figurines

https://www.nytimes.com/2025/10/18/us/lego-theft-california-arrest.html
17•sanj•2h ago•11 comments