Yet another "talk to your data and build a dashboard" app, where data does not leave your browser.
You ask a question, agents produce multiple SQL queries to in-browser sqlite, never seeing results, and write dashboard configuration code. The data you analyze will be indexed with a local semantic index (embeddings generation + sqlite vector search fully local).
Next, sandboxed QuickJS runs this code to produce rich dashboards directly in your browser, no backend attached. This is a fully frontend app (except OpenRouter or other remote LLM).
All data sent to LLM's is heavily sanitized and obfuscated at several points. The remote LLM never sees the contents of data it analyzes. Why does it exist - I started this is a testbed for my local-first AI projects, agentic workflows and contextual data analysis experiments.
It grew into a tool I use daily for quick and dirty data analytics when I don't want to waste time debugging SQL or building charts for simple data questions, when I literally need an answer under 10s.
I also don't like the idea of sharing random data in Claude/ChatGPT chat, neither uploading any work-related datasets to them. Plus they both often choke on tiny 100k rows data.
Fully open-sourced under MIT https://github.com/eatmydata-org/eatmydata, run it yourself it's a static web app.
What's in the box:
- SQLite OPFS adapted from wa-sqlite, data queried only locally;
- TurboQuant semantic indexing extension for sqlite (MIT-licensed);
- Quantized PII detection and embedding generation models straight in browser;
- NER and embeddings inference engines in zero-dependency C and wasm-simd128 optimizations (1.7x faster and 38x lighter binary compare to onnxruntime);
- QuickJS sandbox for AI-generated code;
- Orchestrator <-> SQL Planner <-> Coder agent loop that build SQL and dashboards from user query;
- Apache ECharts for dashboards;
- Fork of xslx Community edition to support styles (missing in OSS version upstream).
Hope it'll be useful to anyone who is interested in local-first stuff.
When I asked AI to show me how many people are from Dallas (from AdventureWorks LT demo file), it thrown this error. Also small tip: make a demo file choose window scrollable, because it doesn't fit on my screen. In any case, nice project.
reply