VEYNDO
Handbook
extensions/apps/site-builder/README.mdView source ↗

English source · 2 min

Shop design app

manifest.json defines the canonical pages, theme overrides and managed actions. server.rs validates the bounded document. design_agent.rs prepares ordinary revision-bound native tasks with the centrally configured inference service. references.rs captures bounded public HTTPS evidence or supplied images; partial capture is explicit. No browser source executes.

Renderer.tsx and site.css render both Studio previews and published pages. studio/ owns graphical controls, Tiptap text, reference alternatives and history. storefront/ mounts the app without replacing cart, account or checkout owners. Global home appearance is inherited; channel home records override it. Public queries enforce published status, time and channel on the server. Drafts stay private. Existing staging diff/release publishes selected app packages and records. usePageProducts.ts resolves explicit selections outside the first catalogue page in native bounded batches; it does not price products or retain a separate catalogue.

Forms use the host's public form-block contract. The forms app owns intake and its private inbox. The original private Storyfront editor remains a different app.

The Studio entry is preview-first: the existing native home is visible before a page record exists, and saved home pages open automatically. studio/StorefrontCanvas.tsx owns the static isolated viewport; native header/hero/product/footer presentation components are shared with the actual storefront. The preview creates no cart, shopper controller, tracking or payment session. studio/home-draft.ts converts an explicit selection to an unsaved native app document while preserving real language text and owned product-media references. tests/ is registered through thin host test adapters; test code cannot be imported into production modules.

studio/BlockPalette.tsx renders illustrated native/app element cards. App elements store references, resolve through the public app registry and use read-only preview grants; elements.rs validates their tenant, active package and public native surface. proposals.rs owns shared proposal validation and persistence; agent_handoff.rs exports credential-free tasks and validates coding-agent results through that owner. Shared agent controls stay in the generic host; page business behavior stays here.

Ordinary pages and design assistance require only the site-builder package. The optional form receiver is reviewed separately when the selected page contains a form. Existing package consent, sandbox and channel-editing rights still apply.

The app-owned immutable prompts/site-design.v1.txt and manifest register site-design@1 through the existing inference evidence. Style-only proposals preserve native content directly; the provider returns {} for the unused document. Section selection defaults to content editing; page-wide theme controls explain the Whole page scope. Unsupported direct section-only theme requests reject before inference. Section selection defaults the contextual agent target while an explicit whole-page choice remains stable until selection changes. Real browser/reference acceptance: docs/evidence/designer-2026-10-29.md.