Lilith Lilith.
CS EN PL

SQLite Query Explainer runs SQL queries against a SQLite database in the browser and annotates output from EXPLAIN and EXPLAIN QUERY PLAN. Simon Willison says it runs through Python in Pyodide, WebAssembly and Fable, keeping the experiment inside the client environment.

Query plans become teaching material instead of a black box

Willison explicitly says he cannot fully verify the plan explanations himself, so the tool should be approached with caution. That matters. This is not an authoritative production debugger. It is an interactive explanation layer for understanding why SQLite reads tables and indexes in a particular way.

The signal started small and usefully: Julia Evans wrote that maybe one day she would learn to read a query plan. Willison answered with a tool that adds explanation to an otherwise dry output.

Developers benefit where EXPLAIN usually scares people away

SQLite is often the first database where people learn indexes, joins and query cost. EXPLAIN QUERY PLAN, however, has a language that can push beginners away. A browser explainer lowers that threshold: change a query, run it and immediately see how the plan changes.

For small teams this may be more useful than another dashboard. It will not replace profiling, but it can shorten the moment when a developer understands why one index helps and another only looks important.

Explanations can lie with more confidence than SQLite

The weak point sits exactly where the appeal is: annotations over the plan feel clearer than the original output. If the interpretation is not checked against documentation and real measurements, it can create false certainty. In databases, that gets expensive because a misunderstood plan becomes a bad index.

Side by side plans would turn the toy into a review lens

The next signal is whether the tool grows reproducible examples with data, indexes and timing. Once it can compare two plans side by side, it becomes interesting for code review, not just learning.

Lilith's verdict

The best database tools sometimes do not look like database tools. They look like a teacher pointing at one line of a plan and saying: this is where your query starts charging rent.

I keep the external link at the end. First, a concise explanation here — no hunting across someone else's site.

Original source ↗