Instead of asking users to download data and reupload, maybe animations using actual CSVs and query artifacts (graphs) are more illustrative for people in a hurry or people who cannot come up with a query question atm?
And the privacy bit would be more convincing if people can see that part of code.
When you say let people see the code, do you mean open sourcing it or showing the key parts of the code on the site?
I Decided to try fully building a project with Claude. I told myself I could not touch the code at all, but in the end I had to make the airplane 3D model in Blender, but I was able to light it in 3js with Claude.
The idea was that you can "upload" your files to your browser and ask AI about your data and have it create queries and graphs for you without ever seeing your actual data.
After some discussion with Claude, we ended up going with DuckDB and OPFS in order to store json and csv as tables directly in the browser. The column names and data type is the only thing that gets sent over to the AI.
DuckDB is a database that can run in your browser with WASM and seems quite performant. It is able to reference files directly in OPFS. OPFS (Origin Private File System) is a browser API that lets us write files directly on disc and reference them.
When you send a question to the AI, it is instructed that it can write duck db queries, Javascript transformations and render a series of different charts with the output.
The chart types are some of the basic chart types from recharts.js as well as a 3js scatter plot and open street maps plotting. Also a tree map, radar map, histogram and heatmap.
The Javascript runs in a web worker with eval, which is a bit scary, so I ended up asking Claude code to implement strict CSPs and removed any remotely fetched assets.
It seems to handle large csv files pretty well. The one I tried was 150mb.
Looking for any data science or accounting people to give it a try with some data and see if it has any use cases at all. You can login with a magic email link and try it with 20 questions.
I asked my girlfriend to try it and she immediately ran into issues, the excel importer didn't work when there were tabs, so I worked those in. Still trying to get her to give the thing a spin, but that may be the hardest part of the whole project.
I initially tried it and found it to be pretty bad, so I switched out the model from Gemini Flash to Claude Sonnet and it seemed much better. I plan to use it when I need to analyze data from a spreadsheet or json files.
If people find it useful I can provide some kind of codes for more credits. Of course the questions are using real $ so I didn't want to open it up too much.