Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Show HN: Eatmydata.ai – Local-First Question-to-SQL-to-Dashboard AI (eatmydata.ai)
5 points by dennis16384 12 hours ago | hide | past | favorite | 2 comments
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.

 help



Very good project, it have a huge potential! But while testing I found an issue: Dallas count bar chart action failed Couldn't produce the analysis step. coder finished without calling run_in_sandbox / save_markdown_action. Show count of people from Dallas as a small bar chart

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.


Thanks! Yep will change the UI there.

For the "show me how many people are from Dallas" in AdventureWorks, it really depends on the model.

With `gemini-3.1-flash-lite` for all agents it produces this sql from the first try for $0.0033: ``` SELECT COUNT(DISTINCT ca.CustomerID) as customer_count FROM CustomerAddress ca JOIN ( SELECT a.AddressID FROM vector_search('Address', 'City', 'Dallas', 20) vs JOIN Address a ON a.rowid = vs.rowid WHERE a.City = 'Dallas' ) addr ON ca.AddressID = addr.AddressID ```

and then formats output in Markdown.

I'll bake some default model in later, and more examples. And I guess it needs some default token quota.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: