Design Is Code
What you design is what you ship.
Website · Docs · Download · Issues
A visual editor where what you design is what you ship. Build layouts on canvas, let AI build for you, or both — no translation layer, the tech you already use.
- WYDIWYG — What You Design Is What You Get. No translation layer, no compiled output — pure HTML + CSS
- AI-native — Built for AI agents from day one. Claude, Cursor, or any MCP client builds layouts directly on canvas
- Bidirectional Tailwind — Design visually, get real tokens.
gap-4notgap-[16px]. Paste classes back, keep designing - Components — Save any frame as a reusable component with named slots. Export
.cjllibraries to share across projects - Native macOS app — Fast, offline, local file storage. Built with Tauri
- Multi-page — Create full sites with multiple pages and routing
Grab the latest release from the Releases page. Free and open source.
git clone https://github.com/getcaja/caja.git
cd caja
npm install
npm run tauri:devRequirements: Node.js 18+, Rust 1.70+
Caja includes a built-in MCP server with 33+ tools. Click the plug icon in the title bar or run:
Ask Claude: "Design a landing page in Caja"
Create frames, style with Tailwind, manage pages, export patterns, and more — all from your AI agent of choice.
- Frontend: React 19, TypeScript, Tailwind CSS v4
- Desktop: Tauri v2 (Rust)
- UI: Radix primitives, Lucide icons
- AI: Model Context Protocol (MCP)
