Show HN: Eatmydata.ai – Local-First Question-to-SQL-to-Dashboard AI

dennis163841 pts0 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.

data eatmydata local sqlite browser first

Related Articles