mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-12 15:20:13 +00:00
feat(studio): add storyboard manifest contract, parser, and read API (#1528)
First PR in the Studio storyboarding stack. Establishes the parseable contract the storyboard UI reads from; no UI yet. - core/storyboard: StoryboardManifest/Frame/Globals types + a lenient STORYBOARD.md parser (frontmatter + status/src/duration/transition_in, freeform narrative tolerated, never throws, records warnings). Exposed as @hyperframes/core/storyboard (browser-safe). - studio-api: GET /projects/:id/storyboard returns the normalized manifest with per-frame srcExists; missing file -> exists:false, not 404. - fixture: packages/studio/fixtures/storyboard-sample for dogfooding the storyboard view in later PRs (built/animated frames + one outline). Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
f72ea25b3b
commit
8a13a07074
@@ -0,0 +1,26 @@
|
||||
# storyboard-sample (Studio fixture)
|
||||
|
||||
A small, self-contained project for dogfooding the Studio **Storyboard** view.
|
||||
Not a registry catalog item — it lives here purely as test content for the
|
||||
storyboard UI/UX work.
|
||||
|
||||
It exercises the storyboard contract end to end:
|
||||
|
||||
- `STORYBOARD.md` — structured manifest (frontmatter + 5 frames) in the canonical
|
||||
format the parser reads.
|
||||
- `compositions/frames/0{1..4}-*.html` — live HTML frame sub-compositions
|
||||
(`built` / `animated` statuses) the contact-sheet tiles render.
|
||||
- Frame 5 (`05-cta.html`) is intentionally **absent** and `status: outline`, so
|
||||
the grid has an outline placeholder to render.
|
||||
|
||||
Preview the storyboard view (flag-gated):
|
||||
|
||||
```bash
|
||||
VITE_STUDIO_ENABLE_STORYBOARD=1 npx hyperframes preview packages/studio/fixtures/storyboard-sample
|
||||
```
|
||||
|
||||
Inspect just the parsed manifest the Studio consumes:
|
||||
|
||||
```bash
|
||||
curl localhost:<port>/api/projects/<id>/storyboard | jq
|
||||
```
|
||||
Reference in New Issue
Block a user