Beak Design is a canvas-based design tool with AI-assisted editing. It supports cloud and local agents and routes document mutations through MCP tools and a command bus.
- TanStack Start + TanStack Router
- React + TypeScript
- TanStack Store for app state
- Konva / React Konva for canvas rendering
- LowDB for persistence
- Tauri (optional desktop runtime)
- Node.js
- pnpm
- Rust toolchain (only required for Tauri desktop development/builds)
Install dependencies:
pnpm installRun web app (Vite on port 3000):
pnpm devWeb build:
pnpm buildPreview production build:
pnpm previewTauri desktop:
pnpm tauri:dev
pnpm tauri:buildRun tests:
pnpm testRun lint:
pnpm lintRun formatter:
pnpm formatRun formatter + eslint autofix:
pnpm checkSet ANTHROPIC_API_KEY in your environment (for example in .env/.env.local):
ANTHROPIC_API_KEY=your_api_key_hereANTHROPIC_API_KEY is optional if you only use local agents.
Beak Design supports:
- Ollama
- CLI agents (
codex,geminicli,claudecode) when available onPATH - MCP servers from local MCP config
See setup details in docs/09-quick-start-guide.md and docs/08-local-agent-integration.md.
High-level flow:
- UI (TanStack Router + React) interacts with canvas and chat state
- AI/chat requests stream through
/api/ai/chat - MCP tools execute through the command bus
- Storage adapters persist document data via LowDB-backed layers
Reference docs:
docs/00-architecture-overview.mddocs/01-agent-integration.mddocs/02-mcp-tools.mddocs/03-canvas-system.mddocs/04-command-bus.mddocs/05-tool-context-provider.mddocs/06-batch-design-processor.mddocs/07-storage-database.mddocs/08-local-agent-integration.mddocs/09-quick-start-guide.md
Full docs index: docs/README.md
Client storage keys used by the app:
beak-users-dbbeak_metadata