Wire up the full stack for step 2 of the build plan: a ddev.ts CLI
wrapper in the main process (execFile + JSON envelope parsing, with a
PATH fallback since GUI apps on macOS don't inherit Homebrew's PATH),
IPC handlers exposed through a typed preload window.api surface,
TanStack Query hooks for polling/mutations, and a two-pane UI (project
list sidebar + detail panel with URLs, services, and DB credentials).
Verified end-to-end against a real scratch DDEV project: typecheck,
lint, and tests pass, and the running app correctly displays live
project data and reflects state changes (start/stop) via polling.
Add Tailwind (via Vite plugin), Vitest+RTL test setup, and the
Zustand/TanStack Query/Lucide libraries the architecture plan calls
for. Strip the electron-vite demo boilerplate (logo, IPC ping demo,
Versions component) in favor of a minimal placeholder screen.
Verified: typecheck, lint, and test suite all pass; pnpm dev boots
and serves the correct renderer HTML.