This folder is a build spec for LisTable, a small macOS desktop app for
restructuring tabular data. Drop this whole folder into Claude Code and point it
at CLAUDE.md.
What LisTable is
A structural editor for tabular JSON and CSV. It shows the same data two ways and lets you edit from either side:
- Table view, a normal grid
- List view, a nested outline produced by "rolling up" one or more columns
It is not a spreadsheet. No formulas, no cross cell references, no number formatting. It fills the gap between "I need a spreadsheet" and "I am editing raw JSON in a text editor."
There is already a working browser prototype in reference/listable.jsx. It
contains the complete data model, the transforms, and both views. The desktop
build wraps that prototype in a Tauri shell and adds real file I/O.
Files in this folder
| File | Purpose |
|---|---|
CLAUDE.md |
Project context for Claude Code. Start here. |
SPEC.md |
Full product and technical spec, including the Tauri layer. |
BUILD_PLAN.md |
Ordered task checklist. |
reference/listable.jsx |
Working browser prototype. Source of truth for model, transforms, UI. |
reference/data-model.md |
The data model and the bidirectional transform design. |
The short version of the job
- Scaffold a Vite + React + Tailwind project.
- Add a Tauri shell.
- Port the prototype, modularized into components and a
lib/for logic. - Add CSV and JSON import and export.
- Add real in place file editing: open a file, edit, save back to the same file.
- Add a native menu (File, Edit) and
.csv/.jsonfile associations. - Add undo and redo.
See BUILD_PLAN.md for the full ordered list.