There's a whole genre of "single-file HTML data viewer" tools: you point them at a CSV and they emit one .html file you can email, drop on a share drive, or open on an air-gapped machine. They're great for looking at data. But the moment you want to actually ask a question — "how many rows per category?", "top 10 by revenue?" — you're back to sorting columns by hand or re-exporting from a real database.

So for dataloupe I added a real SQL console inside the generated file. No server, no WASM download, no network request. Here's how, and why it stays honest about the "single file, works offline" promise.

npx dataloupe sales.csv

# -> sales.html : open it, hit the SQL panel, run SELECT ...

Enter fullscreen mode