cueframe 0.4.9 → 0.4.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -77,45 +77,38 @@ npx -y cueframe render <projectId> -o short.mp4 --json
77
77
  Both paths converge on `render`; the suggestion on-ramp just authors the
78
78
  composition for you instead of you hand-writing it.
79
79
 
80
- ## Package a recipe offline
80
+ ## Run a template
81
81
 
82
- `cueframe recipe pack` is an authoring command, separate from `recipe run`.
83
- It validates a prepared project draft and already-bundled component sources,
84
- calculates their canonical source versions, pins every component placement, and
85
- writes a portable version-4 `.cueframe` project. It needs no login, network,
86
- rendering runtime, or separately installed kernel. It does not compile or execute
87
- component code; preview the result in a compatible CueFrame runtime before publishing.
82
+ A template is one `.cueframe` document: a composition with `{{name}}`
83
+ references, the parameters that fill them, optional presets and brand kits.
84
+ The public catalog lives in `cueframe-ai/cueframe-templates`; your org keeps
85
+ its own under `POST /v1/templates`.
88
86
 
89
87
  ```bash
90
- cueframe recipe pack --body @recipe-input.json --out recipe.cueframe --json
91
- cueframe recipe pack --body @recipe-input.json --out recipe.cueframe --check --json
92
- # --body @- accepts stdin; --dry-run validates without creating/replacing output.
88
+ cueframe template run yosemite-warp-text --preset granite --media source=sample --values text=CARVED -o carved.mp4
89
+ cueframe template run ./template.cueframe --media source=./clip.mp4 --values title="Journey" --no-render --json
90
+ cueframe template status <jobId> --wait --json # reconnect to a running preparation
91
+ cueframe template validate ./template.cueframe # offline: references, presets, mattes
93
92
  ```
94
93
 
95
- The versioned input is `{ "version": 1, "project": { ... }, "components": [...] }`:
96
-
97
- - `project` is a version-4 project draft: `id`, `name`, explicit `createdAt` and
98
- `modifiedAt`, `composition`, `pool`, and `recipe` metadata. No timestamps are invented.
99
- - `recipe` declares `schemaVersion: 1`, `slug`, one `mediaSlots` entry (the current
100
- `recipe run --media` contract), `cloudBrandKit`, and `components` metadata entries
101
- with `componentId`, `name`, `category`, and optional `propSchema`.
102
- - `components` contains self-contained component-v2 source objects:
103
- `{ version: 2, componentId, tsxSource, manifest }`. Bundle owned modules with
104
- `esbuild` and `packages: 'external'`; the CLI checks remaining imports against
105
- the authoritative runtime allowlist and enforces the recipe source-size limit.
106
- - Omit `authoredComponents`, metadata `sourceVersionId`, and placement
107
- `props.componentRef`: the packer generates these consistently. Declare and bind
108
- required component assets to matching pool entries before packaging.
109
-
110
- This is not an automatic exporter for arbitrary existing projects: authors
111
- explicitly choose the replaceable media and prepare the recipe metadata. Keep
112
- the generated artifact under version control; consumers can use it without
113
- rebuilding or installing the recipe's development dependencies.
114
-
115
- Use a recipe with `cueframe recipe run ./recipe.cueframe --media ./input.svg
116
- --no-render --json`. That authenticated workflow uploads media, installs owned
117
- components, and creates an editable project. Omit `--no-render` for immediate
118
- rendering, or render the created project after previewing and editing it.
94
+ `run` publishes a local document to your org (a catalog slug is imported on
95
+ first use), uploads each `--media name=<file>`, then starts one preparation job.
96
+ The job imports and processes media, attaches verified template assets, applies
97
+ the composition, and returns the ready project before `run` renders it. The
98
+ `template_job_request` JSON event carries an idempotency key; pass it back with
99
+ `--idempotency-key` if the start request loses its response. Reuse the same
100
+ media IDs from the earlier upload events as `--media name=media:<id>` so the
101
+ retried request has identical inputs. After a `jobId` arrives,
102
+ `template status <jobId> --wait` reconnects without starting another project.
103
+ `--media name=<https url>` imports the
104
+ URL, `--media name=sample` takes the template's own sample. `--values` are
105
+ coerced by the document's parameter types before anything is sent, so an enum
106
+ typo fails here, not on the server.
107
+
108
+ `validate` needs no account for a file or a catalog slug. It exits 2 with the
109
+ list of problems: undeclared or misplaced references, a preset that does not
110
+ bind, a required media parameter with no sample, a prepared matte at another
111
+ bake version.
119
112
 
120
113
  ## Wire it into your agents
121
114
 
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import{H as a}from"./chunk-QS37SCWN.js";import"./chunk-3QSA3EBY.js";export{a as analyzeCommand};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ var d=Object.defineProperty;var e=(c,a)=>{for(var b in a)d(c,b,{get:a[b],enumerable:!0})};export{e as a};