Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Dev loop — local

Linear: AUT-148 (just dev), AUT-145 (dev-server crate), AUT-146 (file watcher), AUT-147 (storybook index), AUT-152 (live reload), AUT-151 (search filter).

just dev boots the dev-server crate against the existing storybook artifacts under _docs/book/src/assets/ui/, watches crates/ui-storybook/src/** + assets/style.css, and live-reloads the browser when anything changes. One command, no flags to remember.

just dev
# → Serving _docs/book/src/assets/ui at http://127.0.0.1:3000/

Visit http://127.0.0.1:3000/ → land on the cockpit index. Sidebar lists every story grouped by category. Click a row, the iframe loads it; refresh keeps the same story open (URL hash routing). Press / to focus the filter box; Esc clears.

What gets watched

PathEffect
crates/ui-storybook/src/**/*.rsRe-runs cargo run -p ui-storybook --bin ui-export-stories, then broadcasts reload (3–8 s warm).
crates/ui-storybook/assets/style.cssCSS fast path — copies the file straight into the served directory and broadcasts reload (<500 ms, no cargo build).
Anything else under the watched directoriesSame as the first row — full rebuild.

The watcher coalesces rapid-fire saves (10 saves in a debounce window → exactly one rebuild). Compile errors are logged but do not trigger a reload, so the browser stays on the last-good state.

Phone / remote dev

See remote dev for the just dev-remote flow that puts this loop behind a Tailscale Serve URL.

Linker speedup (opt-in)

Symlink or copy .cargo/config.toml.example to .cargo/config.toml (workspace root) to wire mold (Linux) or lld (macOS) into the link step. Knocks ~30–50 % off warm incremental rebuilds. Prerequisite: brew install lld (macOS) or apt install mold (Linux). The file is gitignored — every dev opts in independently.

```admonish note title="The build hot path is ui-storybook" The watched crate is ui-storybook. The rebuild step is cargo run -p ui-storybook --bin ui-export-stories. Most of that 3–8 s window is cargo deciding which artifacts to re-link. The linker config above attacks that directly. DEV-07 (persistent worker) will attack it differently — keeping the renderer warm and skipping the link entirely on each iteration. Both stack.