master
Download ZIP Propose a change
Name Last commit message Last updated
bin Publish 0.22.1 · Colby Knox 19d ago
data Publish 0.22.0 · Colby Knox 19d ago
docs Publish 0.23.3 · Colby Knox 14d ago
public Merge PR #182: Preview text edits immediately while debouncing saves · Colby Knox 15d ago
screenshots Set hero asset · Colby Knox 2mo ago
test Merge PR #182: Preview text edits immediately while debouncing saves · Colby Knox 15d ago
bridge.mjs Publish 0.17.0 · Colby Knox 2mo ago
capture.mjs Publish 0.20.0 · Colby Knox 2mo ago
dockbar.json Rename to dockbar.json: the canonical manifest name (hard cutover) · John Lauer 2mo ago
doctor.mjs Publish 0.22.1 · Colby Knox 19d ago
drive.mjs Publish 0.20.8 · Colby Knox 1mo ago
install.sh Publish 0.23.0 · Colby Knox 18d ago
package.json Publish 0.23.3 · Colby Knox 14d ago
page.json Publish 0.23.3 · Colby Knox 14d ago
platform.cjs Publish 0.22.1 · Colby Knox 19d ago
pose.mjs Publish 0.22.1 · Colby Knox 19d ago
README.md Merge PR #181: Add circuit generators that follow rendered text contours · Colby Knox 18d ago
refresh-data.sh Publish 0.1.0 · Colby Knox 3mo ago
render-hero.mjs Merge PR #181: Add circuit generators that follow rendered text contours · Colby Knox 18d ago
render-pup.mjs Merge PR #181: Add circuit generators that follow rendered text contours · Colby Knox 18d ago
renderer-paths.cjs Publish 0.22.0 · Colby Knox 19d ago
server.js Merge PR #181: Add circuit generators that follow rendered text contours · Colby Knox 18d ago
SKILL.md Publish 0.23.3 · Colby Knox 14d ago
uninstall.sh Publish 0.1.0 · Colby Knox 3mo ago

Hero Studio

The hero-image lab with a human gate. Every wiki page's billboard (the 2000x1250 PNG at the top of its page) is minted here: a human walks a seven-step wizard with the hero rendering live above, clicks Generate, and the export carries a provenance stamp the registry's hero gate requires. An AI can pose, stage, and polish; a human approves.

The wizard

Package, Showcase image, Placement, Background, Headline and text, Finishing, Review and generate: one decision at a time, a dashed ring marking what each step edits, everything updating live. The classic full control panel is one header click away. The title always bakes (it IS the message) and its ink is pixel-anchored at any font size.

Quick start

hero-studio --ai-thread "<your conversation name>" pose <owner>/<slug> --surface webview
# blocks until the human clicks Generate; returns the stamped PNG path
adom-wiki repo push <owner>/<slug> --files docs/hero.png -m "new hero"
adom-wiki page hero <owner>/<slug> --image docs/hero.png

hero-studio doctor verifies both render paths (local headless Chrome, or the host browser via the desktop bridge) and prints exact fixes.

Circuit Trace Generators

The Background step and Classic controls include two options from Circuit Trace Generators:

  • Routed field (circuit-field): the v9 continuous router uses the rendered letter shapes, showcase, and badges as obstacles. Moving the showcase, changing the headline, or switching to a mirrored layout recomposes the field.
  • Seamless traces (circuit-tile): the torus router retains its repeating geometry, with a soft mask clearing those same content areas.

Both continue through open space at the bottom, use the page owner's primary/background colors (neutral ink until a guide resolves), and expose Density, Trace size, Strength, Clear space, a numeric Seed, and New pattern. The controls live below the theme picker; no imported full background is needed. The original Generated traces option remains unchanged.

hero-studio --ai-thread "hero circuit review" set theme=circuit-field circuitSeed=1234
hero-studio --ai-thread "hero circuit review" set circuit.density=0.8 circuit.scale=1.4 circuit.strength=0.22 circuit.clearance=8

Settings and seed survive snapshots, saved styles, and PNG provenance. Geometry is measured at the export size, then reused in the live hero, wiki marquee, and index cards. DOM Range measures actual wrapped text runs; Canvas paints their loaded fonts into a contour stencil. Empty column space remains available to the router. The homepage overlay supplies its own scrim, so no bottom strip is removed from the artwork. Font and showcase loading remeasure the composition. Full-hero imports hide the generators. These options render still artwork: the source playground's animation/reveal systems do not run behind a PNG preview.

The source engines are bundled, with their upstream revision recorded under public/vendor/circuit-trace-generators/README.md; previews need no external generator service. Run npm run test:traces with Hero Studio's usual Chrome and Puppeteer renderer dependencies for geometry, API, wizard, and export checks.

Scale: the human gates the style once

For fleets of similar pages, gate the LOOK, not every part: pose one representative, let the human Generate, hero-studio style save <name>, then hero-studio batch --style <name> --parts parts.json renders every part in that style locally, each PNG's provenance carrying the gate it inherited. A complete bulk pipeline (heroes, scaffold, lint, paced publish, resume) ships at docs/bulk-publish-reference.mjs.

Automated mode

The first Generate of a page each session is always human-clicked. After it, the driving AI may re-generate that page with a recorded attestation of the human's actual approval words; hard-fail layout lints lock every path. Full contract, drive verbs, and state reference: SKILL.md.