Engineering
These are write-ups from the codebase rather than about it. Every constant quoted is a constant in the source, every code block is copied from a real file, and the bugs are left in, including the ones that were mine and embarrassing.
The through-line, if there is one: this is a data application with no server, so every decision that a backend would normally absorb has to be made in a browser tab, in front of the user, with their file. That constraint produces more interesting problems than it has any right to.
Subscribe by Atom feed.
What you will not find here
No benchmarks against competitors, no numbers I cannot point at in a file, and no claims about performance that were not measured. Where something is a judgment call rather than a measurement, the post says so. Where something is still broken, the post says that too.
The stack, for context: React 19 and TypeScript for the workbench at /app, plain TypeScript for everything else, Vite as a multi-page build, DuckDB compiled to WebAssembly as the query engine, ECharts for charts, ag-grid for the data grid, and Cloudflare Pages serving static files. No backend, no accounts, no database of yours anywhere but your own machine.