pro-visu 0.4.0 → 0.5.0
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 +22 -14
- package/dist/cli/index.js +780 -347
- package/dist/cli/index.js.map +1 -1
- package/dist/index.d.ts +31 -29
- package/dist/index.js.map +1 -1
- package/dist/scene-app/assets/{index-sed_MW8w.js → index-Bu-Vjjhs.js} +1 -1
- package/dist/scene-app/index.html +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,14 +5,14 @@ screenshots, media walls — with more asset types to come) of the websites you
|
|
|
5
5
|
into any website repo, point it at a URL, and it writes assets into a gitignored `pro-visu/`
|
|
6
6
|
folder.
|
|
7
7
|
|
|
8
|
-
> Status: **0.
|
|
8
|
+
> Status: **0.4** (pre-1.0; the option surface may still shift). Generators: `scroll-reel` (deterministic frame-stepped recording → mp4 — scroll
|
|
9
9
|
> reels, choreographed tours, scripted interaction, social formats and more), `screenshots`
|
|
10
10
|
> (responsive full-page + element captures), `wall` (a seamless-looping media wall of your
|
|
11
11
|
> assets), `image` (register a file for reuse), plus `specimen`/`palette`/`palette-reel`. The
|
|
12
12
|
> pipeline is a plugin contract, so new asset types slot in without core changes.
|
|
13
13
|
|
|
14
|
-
> Requires Node ≥ 18.18. The first run downloads a managed Chromium
|
|
15
|
-
> across projects)
|
|
14
|
+
> Requires Node ≥ 18.18. The first run downloads a managed Chromium and a static ffmpeg (both
|
|
15
|
+
> cached and shared across projects) — no global installs required.
|
|
16
16
|
|
|
17
17
|
## Install & usage
|
|
18
18
|
|
|
@@ -79,6 +79,12 @@ export default defineConfig({
|
|
|
79
79
|
Config is discovered in multiple formats: `pro-visu.config.{ts,js,mjs,cjs,json}`,
|
|
80
80
|
`.pro-visurc`, or a `pro-visu` key in `package.json`. Use `--config <path>` to override.
|
|
81
81
|
|
|
82
|
+
**Capture mode** (`settings.capture`) lets a site render a clean, settled snapshot for the camera
|
|
83
|
+
only — animations finished, no cookie banner, no chat widget — while keeping the real behaviour
|
|
84
|
+
for visitors. The signal is delivered as query params, cookies, localStorage, and/or an init
|
|
85
|
+
script; the site reads whichever fits its rendering model. (A session cookie also carries auth
|
|
86
|
+
for login-gated pages.) See the [settings docs](https://pro-visu.com/docs/configuration/settings#capture).
|
|
87
|
+
|
|
82
88
|
Prefer JSON (or running via `npx`/global)? `pro-visu init --json` writes the same config as
|
|
83
89
|
`pro-visu.config.json` plus a `pro-visu.schema.json`, wired up with `"$schema": "./pro-visu.schema.json"`
|
|
84
90
|
so your editor still autocompletes and validates every field. `pro-visu schema` regenerates that
|
|
@@ -91,8 +97,8 @@ and are merged beneath each asset's own `options`.
|
|
|
91
97
|
|
|
92
98
|
| Generator | Output | Key options |
|
|
93
99
|
|---|---|---|
|
|
94
|
-
| `scroll-reel` | mp4 of the site (frame-stepped by default) — scroll reels, choreographed tours, interaction demos | `width`/`height`/`fps`/`
|
|
95
|
-
| `screenshots` | png/jpeg page + element captures per
|
|
100
|
+
| `scroll-reel` | mp4 of the site (frame-stepped by default) — scroll reels, choreographed tours, interaction demos | `width`/`height`/`fps`/`durationMs`/`easing` plus `capture`, `choreography`, `autoSections`, `kenBurns`, `loop`, clean-capture, `colorScheme`/`viewports`, `aspect`, `outputs`, `intro`/`outro`, `annotations`, `actions`, `focus`, `routes` — see [Recording reels in depth](#recording-reels-in-depth-scroll-reel) |
|
|
101
|
+
| `screenshots` | png/jpeg page + element captures per viewport | `viewports[]`, `fullPage`, `format`, `elements[]`, `deviceScaleFactor` |
|
|
96
102
|
| `wall` | mp4 media wall — columns of your assets, each scrolling on its own, looping seamlessly | `columns[]` (tiles + per-column motion), `pulses`, `loops`, `pan`, `gap`/`tileAspect`/`cornerRadius`, `stagger`, `test` |
|
|
97
103
|
| `image` | passthrough — registers an existing image file as an asset (e.g. a wall tile) | `src`, `fileName` |
|
|
98
104
|
| `specimen` / `palette` / `palette-reel` | type specimen / colour palette (still + reel) | see the [docs](https://pro-visu.com/docs) |
|
|
@@ -105,7 +111,7 @@ assets: [
|
|
|
105
111
|
url: "https://your-site.com",
|
|
106
112
|
generator: "screenshots",
|
|
107
113
|
options: {
|
|
108
|
-
|
|
114
|
+
viewports: [
|
|
109
115
|
{ name: "desktop", width: 1440, height: 900 },
|
|
110
116
|
{ name: "mobile", width: 390, height: 844 },
|
|
111
117
|
],
|
|
@@ -125,7 +131,7 @@ run-to-run**. Every option below is a `scroll-reel` option.
|
|
|
125
131
|
> Every option has hover docs in `pro-visu.config.ts` — the authoring types are generated from
|
|
126
132
|
> the validation schema, so the editor always matches what the tool accepts.
|
|
127
133
|
|
|
128
|
-
### Capture
|
|
134
|
+
### Capture strategy
|
|
129
135
|
|
|
130
136
|
| Option | Meaning |
|
|
131
137
|
|---|---|
|
|
@@ -151,7 +157,7 @@ options: {
|
|
|
151
157
|
}
|
|
152
158
|
```
|
|
153
159
|
|
|
154
|
-
- `easing` — `linear`, `
|
|
160
|
+
- `easing` — `linear`, `ease-in-out-cubic`, `ease-in-out-quad`, `ease-out-cubic`, `ease-out-quint`, `ease-in-out-sine`, `ease-in-out-expo`.
|
|
155
161
|
- `choreography: [{ to, durationMs?, holdMs?, easing? }]` — replaces the single sweep with an
|
|
156
162
|
authored sequence (`to` = a `0..1` number, an `"NN%"` string, or a CSS selector to bring into view).
|
|
157
163
|
- `autoSections: true | { minHeightFraction?, selector?, holdMs?, durationMs?, maxSections?, constantVelocity? }`
|
|
@@ -261,11 +267,11 @@ assets: [
|
|
|
261
267
|
name: "wall",
|
|
262
268
|
generator: "wall", // no url, no inputs — derived from the tiles below
|
|
263
269
|
options: {
|
|
264
|
-
|
|
270
|
+
durationMs: 16000,
|
|
265
271
|
pan: { direction: "left", loops: 1 },
|
|
266
272
|
columns: [
|
|
267
273
|
{ tiles: ["img-coat", "ui-home"], direction: "down",
|
|
268
|
-
pulses: [{ at: 0.1,
|
|
274
|
+
pulses: [{ at: 0.1, span: 0.15, distance: 0.5 }] },
|
|
269
275
|
{ tiles: ["ui-home", "img-coat"], direction: "up", loops: 1, stagger: 0.4 },
|
|
270
276
|
{ tiles: ["img-coat", "ui-home"], stagger: 0.15 },
|
|
271
277
|
],
|
|
@@ -275,7 +281,7 @@ assets: [
|
|
|
275
281
|
```
|
|
276
282
|
|
|
277
283
|
- **Motion** is a uniform *pulse* model: a column's travel = `loops` continuous periods + its
|
|
278
|
-
`pulses` (each `{ at,
|
|
284
|
+
`pulses` (each `{ at, span, distance, easing }`, all clip-relative), rounded up to a whole
|
|
279
285
|
number so it loops seamlessly. `loops` defaults to `0` (static unless a pulse moves it); `stagger`
|
|
280
286
|
(0–1) phase-shifts a column so similar tiles don't line up.
|
|
281
287
|
- **Tile sizing:** tiles fit the column width and take their height from the media's aspect, so
|
|
@@ -292,15 +298,17 @@ assets: [
|
|
|
292
298
|
|
|
293
299
|
| Command | What it does |
|
|
294
300
|
|---|---|
|
|
295
|
-
| `pro-visu init` | Scaffold config, create + gitignore the output dir, ensure Chromium. `--json` scaffolds a dependency-free JSON config + JSON Schema
|
|
301
|
+
| `pro-visu init` | Scaffold config (detecting your framework/package manager/dev port), create + gitignore the output dir, ensure Chromium. `--json` scaffolds a dependency-free JSON config + JSON Schema (auto-selected when pro-visu isn't a local dependency) |
|
|
296
302
|
| `pro-visu generate [--asset <name>]` | Run generators per config; writes assets + `manifest.json` |
|
|
297
|
-
| `pro-visu
|
|
303
|
+
| `pro-visu doctor` | Check the setup — Node, config + asset options, Chromium, ffmpeg, URL reachability — without generating |
|
|
304
|
+
| `pro-visu list [--json]` | Show generated assets recorded in the manifest |
|
|
298
305
|
| `pro-visu schema [--out <path>]` | Write a JSON Schema for `pro-visu.config.json` (editor autocomplete); re-run after upgrading to refresh it |
|
|
299
306
|
| `pro-visu reset` | Clean up orphaned processes/temp from an interrupted run |
|
|
300
307
|
|
|
301
308
|
`generate` flags: `--draft` (faster, lower-fidelity iteration), `--cache` (skip assets whose
|
|
302
309
|
inputs+options are unchanged), `--skip-server` (use an already-running site), `--skip-build`
|
|
303
|
-
(keep the managed server but skip its build), `--
|
|
310
|
+
(keep the managed server but skip its build), `--dry-run` (validate + print the plan only),
|
|
311
|
+
`--concurrency`, `--verbose`. A managed server
|
|
304
312
|
(`settings.server`) can build → start → capture → stop the site automatically so the npm script
|
|
305
313
|
is just `pro-visu generate`. See the [CLI docs](https://pro-visu.com/docs/cli) for the
|
|
306
314
|
full flag list.
|