4 ms·
Hey HN, I made CSVFiddle because I wanted a quick way to query CSV files with SQL and share the results with other people. The app runs 100% in-browser, so th
by shbhrsaha 4y ago
Hey HN,
I made CSVFiddle because I wanted a quick way to query CSV files with SQL and share the results with other people.
The app runs 100% in-browser, so the data you import and the queries you write are never sent to a web server. When you share the URL to a workspace, all of its queries and references to CSV files are just encoded in the URL fragment.
In-browser querying is made possible by DuckDB-Wasm, which has been an awesome project to work with:
https://duckdb.org/2021/10/29/duckdb-wasm.html https://duckdb.org/2021/10/29/duckdb-wasm.html
There are definitely limitations with CSVFiddle (e.g. sometimes the auto-parsing feature doesn't accurately interpret the imported files), but so far it's been useful for a range of data tasks.
Some demo workspaces you can check out:
University Students by State https://tinyurl.com/6k35anth https://tinyurl.com/6k35anth
Uber Pickups in NYC https://tinyurl.com/5n8av39h https://tinyurl.com/5n8av39h
- shubhamjain 4y agoDoes it work with really large files? Like, >100mb or so. I was considering making something similar but with sqlite.js [1], but the problem with it is that it loads everything in memory, so I wasn't entirely sure how it will deal with larger workloads. [1]: https://sql.js.org/#/ https://sql.js.org/#/
- throwamon 4y agoThis sounds like a workaround to your problem: https://news.ycombinator.com/item?id=27016630 https://news.ycombinator.com/item?id=27016630
- kjksf 4y agoDo you have an option to use a .csv from url, e.g.: https://csvfiddle.io/?url=https://foo.com/bar.csv https://csvfiddle.io/?url=https://foo.com/bar.csv If not, could you implement it? I ask because I'm working on a web-based file manager (https://filerion.com/ https://filerion.com/) One of the feature ideas I have is letting people to view CSV files. I don't want to implement my own csv viewer and would rather integrate with tools like csvfiddle. I.e. the user would right-click on a .csv file in my file manager, one of the options would be "View in CSVFiddle". When chosen, I would create publicly visible, CORS-compatible url for the .csv file (so that you can fetch() it) and launch cvsfiddle.io?url=<url> in a new window.