DEV.co
Open-Source Databases · incentius-foss

WhatTheDuck

WhatTheDuck is a browser-based SQL editor for CSV and Parquet files built on DuckDB. Users upload data files, query them with SQL, and download results—all processed locally without server transmission. Data persists only during the session.

Source: GitHub — github.com/incentius-foss/WhatTheDuck
629
GitHub stars
28
Forks
Vue
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryincentius-foss/WhatTheDuck
Ownerincentius-foss
Primary languageVue
LicenseMIT — OSI-approved
Stars629
Forks28
Open issues1
Latest releaseUnknown
Last updated2026-05-12
Sourcehttps://github.com/incentius-foss/WhatTheDuck

What WhatTheDuck is

Vue.js frontend application leveraging DuckDB's in-browser SQL engine to enable client-side CSV/Parquet analysis. Uses Quasar framework for development; supports multi-file joins and exports filtered results to CSV. No persistent backend; data stored in browser memory.

Quickstart

Get the WhatTheDuck source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/incentius-foss/WhatTheDuck.gitcd WhatTheDuck# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Ad-hoc Data Exploration

Quick analysis of CSV/Parquet files without uploading to cloud services; ideal for privacy-sensitive datasets or exploratory queries that don't require persistence.

Data Transformation & Reporting

Filter, join, and aggregate data with SQL, then export results—useful for one-off reporting tasks or ETL-adjacent workflows where server-side processing isn't needed.

Educational & Proof-of-Concept Use

Teaching SQL basics or demonstrating DuckDB capabilities to teams; low friction deployment and no backend dependencies simplify setup for demos or training.

Implementation considerations

  • Installation via Yarn/npm and Quasar build tooling; production deployment requires static hosting (e.g., Vercel, S3 + CloudFront). Docker Compose available for local dev.
  • Session-only data means no persistence layer—verify use case tolerates data loss on refresh or browser close.
  • DuckDB runs in browser; monitor performance and memory usage with intended file sizes and query complexity.
  • No environment configuration for API keys, backends, or secrets evident; deployment is primarily configuration-less.
  • Single Vue app; no backend code to maintain or scale, but also no server-side computation or external integration hooks.

When to avoid it — and what to weigh

  • Persistent Data Storage Required — Session-only memory storage means all data is lost on page refresh. Not suitable for applications where historical records or audit trails are mandatory.
  • Large Dataset Processing — Browser memory constraints limit practical dataset size. Unknown how performance scales; browser-based execution may be insufficient for multi-GB analyses.
  • Production Critical Workflows — No release versioning, unstable deployment story, and single maintainer structure indicate maturity risks. Unsuitable for mission-critical or compliance-regulated environments.
  • Collaborative Multi-User Access — No authentication, authorization, or multi-user session management evident. Each user operates in isolation; no sharing or concurrent access support.

License & commercial use

Licensed under MIT (MIT License), a permissive OSI-approved license. Permits use, modification, and distribution with minimal restrictions; attribution appreciated but not legally required.

MIT License permits commercial use. However, verify your use case does not rely on undocumented features, SLA guarantees, or vendor support. No commercial support or warranty is stated. For production deployments, consider whether lack of formal maintenance and versioning aligns with your risk tolerance.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceModerate
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitGood
Assessment confidenceHigh
Security considerations

Data processing occurs locally in the browser (WASM-based DuckDB). No data transmission to external servers claimed in README. However: unknown code-signing, dependency audit status; WASM security boundary relies on browser sandbox; no input validation/sanitization details; no rate limiting or DOS protections; suitable for trusted or personal use, but verify WASM supply chain and browser security model for sensitive data. Consider integrity of hosted assets (CSP, subresource integrity).

Alternatives to consider

Observable / Observable Plot

Browser-based data exploration with SQL-like queries and visualization; more mature, funded, and designed for collaborative notebooks. Steeper learning curve and vendor lock-in.

Metabase (self-hosted)

Full-featured open-source BI platform with persistence, multi-user support, and scheduling. Requires backend deployment and database setup; overkill for ad-hoc exploration.

SQL.js or SQLite Web

Similar in-browser SQL engines; SQLite Web offers a simpler UI for SQLite. Less mature ecosystem than DuckDB; fewer data format options.

Software development agency

Build on WhatTheDuck with DEV.co software developers

Best suited for ad-hoc analysis and exploratory queries. If you need persistence, multi-user access, or production guarantees, discuss alternatives with our team.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

WhatTheDuck FAQ

Is my data stored on a server?
No. Data is processed and stored locally in your browser's memory. Refreshing the page clears all data. No transmission to external servers occurs.
Can I use WhatTheDuck for production analytics?
Not recommended. Session-only storage, lack of versioning, no SLA, and single maintainer make it unsuitable for mission-critical workflows. Better for one-off analysis and exploration.
What data formats are supported?
CSV and Parquet files for input. CSV for output. No support for Excel, JSON, or other formats stated.
Can multiple users access the same session?
No. Each browser session is isolated. No multi-user or collaborative features; sharing requires each user to re-upload and re-query data.

Work with a software development agency

Adopting WhatTheDuck is usually one piece of a larger software development effort. As a software development agency, DEV.co provides software development services and web development expertise — pairing senior software developers and web developers with your team to design, build, and operate open-source databases software in production.

Evaluate WhatTheDuck for Your Data Workflow

Best suited for ad-hoc analysis and exploratory queries. If you need persistence, multi-user access, or production guarantees, discuss alternatives with our team.