QuackDB is a privacy-preserving in-browser DuckDB SQL playground and editor.
Demo available at quackdb.com.
- In-Browser: The DuckDB Wasm library is used to run SQL queries in the browser.
- File Types: Supports
.csv
,.json
,.parquet
,.sqlite
,.duckdb
and.arrow
files. - Privacy: no screen recordings or client-side error monitoring (only Vercel Analytics).
- Filesystem Access: OPFS is used to store files in the browser's filesystem for persistence.
I wanted a quick and simple tool for iterating on DuckDB queries and visualizing the results. I also wanted to experiment with the new Filesystem Access API (OPFS) and explore the capabilities of DuckDB in the browser.
Category | Tool |
---|---|
Database | DuckDB Wasm |
Frontend | Remix · Tailwind CSS, shadcn/ui |
Backend | Vercel |
Visualization | Observable Plot, Tanstack Table |
Web APIs | Comlink, OPFS |
An earlier version of this project used SST for the backend infrastructure, but I switched to Vercel for simplicity.
- Safari support 😁
- Improved UI / charts / tables / etc.
- Data import/export
- Responsive design improvements
- Performance improvements with Arrow
- Snippets / examples
- NSQL integration for natural language queries.
- Co-pilot (or similar) integration for code suggestions.
MIT
This project is not in any way affiliated with DuckDB or any of the other projects mentioned above.
- Built in chrome OPFS viewer can be accessed from https://www.quackdb.com/temporary. To navigate, manually change the URL to the desired path as Chrome does not allow navigation by clicking on the links.
- Safari will not be fully supported until this bug is fixed (serializing file handles is not supported in Safari).