Brian Hung
Projects
Chat with Spreadsheet
Spreadsheet that can be used normally, or with LLMs.
Editing a cell
the cell's text
batchCellContents
changed cells
valuesUpdated
Glide data grid
DataEditor, provideEditor
FormulaEditor
CodeMirror, Lezer grammar
colors each cell reference
HyperFormula, in a worker
recalculates dependent cells
editorView.changes
sent with the next message
api/autocomplete
a model suggests formulas
The editor parses a formula to highlight it; HyperFormula parses it again to evaluate it.
Asking the model
messages
a tool call
A1 ranges
cell values
valuesUpdated
ChatBox
adds sheets, selection, edits
streamText
api/chat.ts, an edge function
onToolCall
runs tools in the browser
HyperFormula worker
the engine the grid uses
Glide data grid
repaints the changed cells
The model picks each tool; the browser runs it on the same engine the grid uses.