Features
Everything Protoyard does
Protoyard turns a product idea into a prototype that behaves like the real thing: explore it in seconds with no build, keep the one that works as a full app, and share it. Real behavior, fake infrastructure.
Start from a clone
Protoyard runs from its repository today. You need Node.js 24.20 or newer and pnpm 11 (through Corepack). These commands turn a sentence into three playable variants and open them in your browser; the first run builds the player once.
git clone https://github.com/DailybotHQ/protoyard
cd protoyard
corepack enable && pnpm install
pnpm protoyard quick "A climbing gym books classes and tracks members" --slug gym --variants 3
pnpm protoyard quick serve gym --open The full walkthrough is in the Quickstart, and every quick subcommand in the Quick explorations guide.
From a brief to a playable app
protoyard quick turns a sentence into a running exploration in about 1.5 s, with variants to compare side by side.
-
quick "<brief>" --variants 3writes a disposable exploration plus deterministic variants and a compare page. -
quick serveplays it on 127.0.0.1, andquick iterate --patchchanges the blueprint with a JSON Patch while the open tab live-reloads with its data kept.quick undotakes a change back. -
quick feedbackgathers reviewers’ comments into REVIEW.md,quick reportturns timed validation sessions into REPORT.md, andquick shotcaptures PNGs. -
quick promoteturns the keeper into a full prototype.
A player with nothing to install
Open a blueprint from a share link, a file or a pasted document. No build, and each blueprint keeps its own browser storage.
- Share links carry the whole blueprint in the URL fragment, so it is never sent to a server.
- An embedding page can load or replace the blueprint over a strict, origin-checked postMessage protocol (
connectPlayer). - Installed from a secure origin, the player works offline after one visit.
- Every blueprint gets its own content-derived IndexedDB namespace, so two blueprints never share data.
Full prototypes from blueprints
When an idea is worth keeping, generate a real Vite + Svelte 5 app from its data-only blueprint, or start from a template.
- Two levels: the player runs a blueprint with no build or generated code;
protoyard generatewrites a full app in prototypes/<slug>/ with its own code and tests. - Both render the blueprint through the same app model, so moving between levels keeps entities, screens and scenarios.
quick promotemoves an exploration up; Open in player on a gallery entry moves it down. -
blueprint new --from-briefturns prose into a validated blueprint offline, with no model call; 27 templates and 40 catalog blueprints are ready to start from. - Every prototype carries an AGENTS.md and docs/ spec whose generated regions stay in sync with the code.
Real behavior, fake infrastructure
A persistent browser database, deterministic scenarios, personas and simulated time, all under an in-app DevTools panel.
- IndexedDB through Dexie: typed tables, migrations, transactions and live queries that survive reloads.
- Deterministic scenarios: the same seed rebuilds the same world, from an empty workspace to a dense, busy one.
- Personas and roles enforced in services, not just hidden in the UI; simulated time, offline mode, latency and errors.
- DevTools switch scenario, persona, time, environment and theme, and save or restore snapshots.
Kits beyond CRUD
Themes, layouts and device shells, plus rich views, charts, analytics, SaaS flows and scripted AI assistants.
- A 64-theme library on top of six built-in themes, twelve shared page layouts, and device and host shells.
- Rich views: board, calendar, timeline, a virtualized data grid, trees, an offline map, files and activity.
- Charts and an analytics kit with KPIs, funnels, cohorts and an editable dashboard over deterministic events.
- Simulated SaaS flows (sign-in, SSO, MFA, onboarding, billing), scripted AI assistants and agents with no model API, and 175 portraits of fictional people.
Review comments
Reviewers pin comments to screens of a built prototype or a served exploration; an agent can plan from the result.
- Comments are opt-in and anchored to the element they describe, with threads, resolve and reopen.
- They are stored locally, on Cloudflare Pages, on your own endpoint, or in a Claude artifact.
-
comments pull(andquick feedbackfor explorations) turns them into a REVIEW.md.
Built for coding agents
A distributable agent skill, a local MCP server, a DeepWorkPlan addon and a versioned machine interface.
- The protoyard agent skill routes an agent through quick exploration, full prototypes, iteration, review, export and publishing.
-
protoyard mcpis a local stdio MCP server over a fixed set of CLI operations; there is no hosted endpoint. - The DeepWorkPlan addon packet lets a plan turn an idea into explorations, compare them and record the decision with evidence.
- Every CLI command takes --json, and
--version --jsonanddoctor --jsonexpose a versioned machine interface.
Packages
Every library is a publish-ready npm package with typed ESM exports. Not on npm yet: today you run Protoyard from its repository.
- The packages build to dist/ with types, lint clean as packed tarballs, and install in a clean consumer project.
- No version has been published to npm yet;
npm create protoyardcomes with the first release.
Measured numbers
Measured on an Apple M1 Max, often under load from other builds; numbers move with the machine and the load. Each row links the guide that publishes it.
| What | Measured | Source |
|---|---|---|
Brief → playable exploration (quick, no build) | 1,527 ms median | QUICK |
| Second exploration (shared player reused) | 987 ms | QUICK |
| Player initial JavaScript | 178.8 KB gzip | QUICK |
| Player, first visit from a share link (crm blueprint) | 190 ms to ready | PERFORMANCE |
| Built prototype, first screen in a fresh browser (crm-demo) | 115 ms median | PERFORMANCE |
| Data grid, first render of 100,000 rows | 94 ms, 0 long tasks while scrolling | PERFORMANCE |
| Initial JavaScript of every built prototype | ≤ 250 KB gzip (budget passed for all 12) | PERFORMANCE |
Honest boundaries
- Simulated data, no backend. Data lives in your browser, per origin. It does not sync between devices, and the browser may clear it, so export snapshots of anything worth keeping.
- No real auth. Personas, roles, sign-in, SSO and MFA simulate product behavior; they are not security. Prototypes on one origin can read each other's storage.
- No real services. Demo data is fictional, nothing connects to real payments or AI providers, and the AI kits are scripted.
- Not on npm yet. The packages are publish-ready, but no version has been published, so run
Protoyard from its repository today.
npm create protoyardcomes with the first release (Packages guide). - Browser, not native. Mobile prototypes run in the mobile browser, and shells simulate devices rather than emulate them.
The threat model and trust boundaries are in the Security guide .