Quickstart
Zero to a rendered, checked section in under an hour, on the scaffolded starter.
This walks the scaffolded starter template end to end: create a workspace, see its one section render, read how it’s built, make one edit, and check it. It does not re-teach the authoring contract — see Overview for the mental model and Schema system for the four files in depth.
Create your workspace
Section titled “Create your workspace”npm create @homepages/workspace@latest my-workspaceThis stamps a workspace with one template, starter, and one section in it,
hero — a working section built on the real contract, not a stub. See
Overview for what a workspace, template, and section are.
See it render
Section titled “See it render”cd my-workspacenpm run devThis opens the home launcher in your browser: from there the canvas
mirror renders the template with starter’s hero in it, and the
full-template viewer shows the whole page. See Dev for the launcher,
the canvas mirror, and live reload.
If you’re an agent (or otherwise browser-less), hit the inspect endpoint instead — it returns each slot’s fill state and a text outline of the render:
curl 'http://localhost:<port>/api/inspect?template=starter§ion=hero&fixture=typical&format=text'typical is the starter hero’s baseline fixture; it also has left and
long-blurb fixtures exercising an option and a content-length branch. See
Dev for /api/inspect and the other
agent-facing endpoints.
Read the worked example
Section titled “Read the worked example”Before changing anything, read the four files that make up the starter’s
hero section — templates/starter/sections/hero/:
schema.ts— the slots (hero_image,headline,blurb) and thealignoption, each comment explaining why it’s declared the way it is.fill-spec.ts— how AI fillshero_imageandblurb;headlineneeds no decision because it’s fact-bound.fixtures.ts— thetypicalbaseline plus theleft/long-blurbstates.Renderer.tsx— the markup, including the one interactive part:blurbwrapped in a"use client"island.
Each file is annotated in place. For the concepts behind them, see Schema system.
Make one edit
Section titled “Make one edit”Open templates/starter/sections/hero/fixtures.ts and change the headline
value under base:
headline: "101 Queensway, Jamaica Plain, MA 02130",headline: "12 Elm Street, Jamaica Plain, MA 02130",Save it. If npm run dev is running, any open preview of the hero section
reloads with the new headline; re-running the /api/inspect call above also
shows the new value.
Check it
Section titled “Check it”npm run check✓ startercheck passedA green check is the acceptance gate — see Check for what its
six stages verify and what a failure looks like.
The author loop
Section titled “The author loop”Every section, and every change to one, runs the same three-step loop:
- Edit a section’s files.
- Preview the result —
npm run devin a browser, or/api/inspectfrom a terminal. - Check it —
npm run check— until it’s green.
Every recipe in this corpus ends by running this loop.