A Flutter desktop CSV editor built for game-development data — items, dialogue tables, stats. It's built around an immutable document model managed with Riverpod, a PlutoGrid spreadsheet view, MySQL bidirectional sync, and an integrated Iris assistant that operates on the open document through tool calls.
The editor is a full spreadsheet: open/import CSV/TSV/TXT, edit cells with a mirrored formula bar, add/remove/duplicate/move/reorder rows and columns, multi-row batch edits via a checkbox column, search & replace with highlighted matches, 50-level undo/redo, and auto-detected column-type validation that red-tints invalid cells. A careful version-bump rule avoids rebuilding the grid (and losing scroll) on plain cell edits.
A visual Query Builder hides non-matching rows AutoFilter-style with type-aware AND/OR conditions, and when connected to MySQL a SQL Query Builder composes SELECT/WHERE/ORDER BY/LIMIT with a live preview and loads results as the document. Connecting auto-pushes the current doc as a table; push/pull/disconnect keep it in sync. The Iris panel streams LLM responses and calls CSV and database tools that execute against the live document.
Iris Data Studio Demo