Index-card research notes on a freeform canvas, stored as plain Markdown files.
New to Shoebox? The quick-start guide walks you from download to your first arranged board in about five minutes.
Shoebox is a desktop app built around the index-card research method used by writers like Robert Greene and Ryan Holiday: one idea per 3×5 card, each card tied to its source, and cards physically rearranged on a table until a book or essay finds its structure.
In Shoebox, decks hold the cards drawn from one work (a book you've read, an interview set), and boards are your projects — freeform dot-grid canvases where you place, group, and categorize cards from any deck. The same excerpt can be "Perception" on one board and "Introduction" on another, because categories belong to the placement, not the card.
The guiding principle: the app is a view over a folder of Markdown files,
never the owner of them. Every card is a plain .md file with YAML
frontmatter in a folder you choose. Edit them in Obsidian, sync them with
anything, delete the app entirely — your notes are untouched.
- Canvas boards — drag cards on a dot grid with snap, multi-select and marquee, group drag, middle-mouse panning, and per-board zoom (Ctrl+scroll) and scroll position that persist between sessions
- Per-board categories — name + color, shown as a stripe on the card edge, with a legend/filter panel; apply to a whole selection at once
- Deck view — read an entire deck as a page of full-size cards, with drag-to-insert reordering saved back to the deck
- Plain Markdown + YAML frontmatter — Obsidian-compatible; unknown frontmatter keys round-trip untouched
- Live file watching — edit a card in another editor and it updates on the canvas instantly
- Card editor — CodeMirror 6 with live preview, title/source/page fields, and a conflict banner if the file changed on disk while editing
- Fuzzy search — typo-tolerant, scoped to a board, a deck, or all decks
- Safe with your files — all writes are atomic; deletes go to the OS trash, never a hard delete
- Fully remappable keyboard shortcuts, theming (system/light/dark), and adjustable card size and orientation
Point Shoebox at any folder and it maintains this layout:
NotesRoot/
├── Decks/
│ └── Meditations/
│ ├── _deck.md # deck metadata: source work, author, card order
│ └── amor-fati.md # one card: YAML frontmatter + Markdown body
└── Boards/
└── The Obstacle Book.md # placements: which cards, where, what category
No database, no lock-in, no absolute paths written into the files — the folder stays sync- and version-control-friendly. See docs/PRD.md and docs/Prototype V2.md for the full data model.
Grab the latest portable Windows executable from the
Releases page — download
shoebox-vX.Y.Z-windows-amd64.exe and run it. No installer, no admin rights.
Shoebox uses the system WebView2 runtime, which ships with Windows 10/11. In the rare case it's missing, install the Evergreen WebView2 Runtime from Microsoft.
The codebase is cross-platform by design (Wails v2, pure Go — no CGO), but only Windows is currently built and tested. macOS and Linux should work by building from source (below); treat them as experimental.
Linux users: after wails build -tags webkit2_41, run
build/linux/install.sh from the project root to install the binary, icon,
and desktop entry for the current user.
Prerequisites:
-
Go 1.25+
-
Node.js 20+ (with npm)
-
The Wails CLI:
go install github.com/wailsapp/wails/v2/cmd/wails@v2.13.0 -
Platform webview dependencies — WebView2 on Windows (preinstalled on Win 10/11), Xcode Command Line Tools on macOS,
libgtk-3-devandlibwebkit2gtk-4.1-devon Linux. Runwails doctorto check your setup.
Then:
wails build
This installs and builds the frontend automatically and produces
build/bin/shoebox.exe (or build/bin/shoebox on macOS/Linux).
