What is Workbench?
Workbench (wb) is my CLI for managing the full lifecycle of projects—scaffolding, evolution, and archival.
What It Does
wb init- Scaffold a new project with my preferred stackwb add/rm- Toggle features as the project evolveswb archive- Ship a finished project tomarkmals-archiveand clean up locallywb restore- Bring it back when I need it again
Key Decisions
mise Everywhere
Every project uses mise for tool versions and task running. No more "works on my machine" issues between my devices.
Declarative Templates
Project definitions live in TOML. Easy to tweak, easy to understand when I come back months later.
Project Types
| Type | Stack |
|---|---|
website | React/Vite + Tailwind, optional Convex |
tui | Go + Bubble Tea + Kong |
ios | Swift + SwiftUI |
Architecture Notes
- CLI parsing: Kong
- Templates: Go's
text/templatewith embedded FS - Config:
.workbench.tomlin project root - Project definitions:
internal/projectdef/defs/*.toml