---
name: status-ledger
description: Animate a three-part readiness check with stationary illustrated cards, arriving corner seals, revealed supporting details and a shared closing statement.
version: 1.0.4
---

# Status Ledger

Use this constrained parameterized renderer for readiness, preparation and opening checks. Three illustrated cards are visible from the beginning and stay fixed. Corner seals arrive one at a time, then lower explanations reveal on a shared baseline. A separate closing sentence resolves the sequence. The final view remains still for reading.

Read [inputs](references/inputs.md) and [motion and review](references/motion.md), then write a topic-specific JSON brief outside the Skill folder. This workflow generates an editable HTML/GSAP project. It is a fixed composition with selectable vector symbols, not an unrestricted scene authoring system. It has no photographic or presenter scene.

Requirements: Node.js 22, npm, FFmpeg, and a Chromium installation usable by HyperFrames. Install the fixed dependency with `npm ci --ignore-scripts --no-audit --no-fund`. The first renderer invocation may download Chromium. Fonts and GSAP are included locally with their required notices.

```sh
node scripts/create.mjs --brief /path/check.json --theme porcelain --out /path/new-project
node scripts/render.mjs /path/new-project /path/film.mp4
```

The output folder must be new. Themes are `porcelain` (default), `harbor`, `rosewood`, and neutral `carbon`. Both dark themes have a stationary fine grid. Motion, geometry and content remain consistent across themes. Every composition is 1920×1080 at 30 fps and lasts 7.6 seconds. Rendering uses one worker.

Chinese is detected automatically. It uses Smiley Sans with Noto Sans SC fallback; `--cjk noto` selects Noto Sans SC. `--font /path/font.woff2` gives a local authorized font priority. `--colors /path/colors.json` replaces known semantic colors with six-digit hexadecimal values; required text pairs must meet a 4.5 contrast ratio. A custom font can change wrapping, so inspect all actual bounds afterward.

The generated `brief.json` and `project.json` record content, font, theme, version and HTML hash. Edit the brief and generate into a fresh directory, or author changes in the resulting HTML and validate them. `window.__timelines['status-ledger']` is a paused GSAP timeline for HyperFrames. `window.ledger.seek(seconds)` returns a boolean and supports deterministic forward and reverse inspection from 0 through 7.6 seconds. `window.ledger.state()` exposes visible text states.

Outputs are silent. There is no music, sound effect generator, mixer or audio editor. Verify the encoded film, each seal and detail boundary, stationary cards, text fit, reverse seeks and final hold. Encoder success does not establish visual or user acceptance.
