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,.duckdband.arrowfiles.
- 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).
