voila-recorder 0.4.0 → 0.4.1

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/AGENTS.md CHANGED
@@ -45,8 +45,7 @@ npx -y voila-recorder review demo.mp4
45
45
  duplicate elements.
46
46
  - Selector failures name the failing step and include the live page outline —
47
47
  patch, don't retry blindly.
48
- - `--device mobile` records a real iPhone-class viewport (portrait; zoom is
49
- disabled on purpose — mobile layouts crop badly).
48
+ - `--device mobile` and `--device tablet` record real portrait viewports. Zoom is disabled on both because narrow layouts crop badly.
50
49
  - Login-protected apps: ask the human to sign in once
51
50
  (`npx -y voila-recorder record <url> --headful` or the web UI via
52
51
  `npx -y voila-recorder serve`). The session persists in a local browser
package/README.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # voila.
2
2
 
3
+ [![ci](https://github.com/anzal1/voila/actions/workflows/ci.yml/badge.svg)](https://github.com/anzal1/voila/actions/workflows/ci.yml)
4
+ [![npm](https://img.shields.io/npm/v/voila-recorder)](https://www.npmjs.com/package/voila-recorder)
5
+
6
+ Verified on Linux, macOS, and Windows in CI: every push records a real demo on
7
+ all three and checks the on-device narration track.
8
+
3
9
  One-click, permission-free product demo recorder. Paste a URL → get a crisp,
4
10
  auto-zoomed, cursor-animated MP4. No OS screen-recording permission, ever —
5
11
  nothing captures your screen. The page is rendered inside a Chromium instance
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "voila-recorder",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "Permission-free product demo recorder: URL in, narrated auto-zoomed MP4 out — with the recipe embedded in the video. Agent-native (MCP), fully on-device.",
5
5
  "license": "MIT",
6
6
  "main": "pipeline.js",
@@ -8,9 +8,21 @@
8
8
  "voila": "./cli.js"
9
9
  },
10
10
  "files": [
11
- "cli.js", "server.js", "mcp.js", "pipeline.js", "recorder.js", "tour.js",
12
- "overlay.js", "render.js", "audio.js", "review.js", "public/", "skills/",
13
- "AGENTS.md", "README.md", "RECIPE.md"
11
+ "cli.js",
12
+ "server.js",
13
+ "mcp.js",
14
+ "pipeline.js",
15
+ "recorder.js",
16
+ "tour.js",
17
+ "overlay.js",
18
+ "render.js",
19
+ "audio.js",
20
+ "review.js",
21
+ "public/",
22
+ "skills/",
23
+ "AGENTS.md",
24
+ "README.md",
25
+ "RECIPE.md"
14
26
  ],
15
27
  "repository": {
16
28
  "type": "git",
@@ -25,7 +37,16 @@
25
37
  "start": "node server.js",
26
38
  "test:record": "node test.js"
27
39
  },
28
- "keywords": ["demo", "screen-recording", "playwright", "mcp", "agent", "tts", "product-demo", "demos-as-code"],
40
+ "keywords": [
41
+ "demo",
42
+ "screen-recording",
43
+ "playwright",
44
+ "mcp",
45
+ "agent",
46
+ "tts",
47
+ "product-demo",
48
+ "demos-as-code"
49
+ ],
29
50
  "dependencies": {
30
51
  "@modelcontextprotocol/sdk": "^1.30.0",
31
52
  "express": "^4.19.2",
package/recorder.js CHANGED
@@ -23,7 +23,7 @@ const DEVICES = {
23
23
  userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Mobile/15E148 Safari/604.1',
24
24
  },
25
25
  tablet: {
26
- viewport: { width: 834, height: 1112 }, dpr: 2, isMobile: true, hasTouch: true, maxZoom: 1.25,
26
+ viewport: { width: 834, height: 1112 }, dpr: 2, isMobile: true, hasTouch: true, maxZoom: 1,
27
27
  userAgent: 'Mozilla/5.0 (iPad; CPU OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Mobile/15E148 Safari/604.1',
28
28
  },
29
29
  };
@@ -48,9 +48,9 @@ Reference: https://voila.anzalabidi.dev/llms.txt · https://github.com/anzal1/vo
48
48
  (desktop + mobile nav).
49
49
  - On selector failure the error includes the live page outline — use it to
50
50
  patch, don't retry blindly.
51
- - Devices: desktop (1280×800), mobile (390×844, iPhone emulation, zoom
52
- auto-disabled — mobile layouts crop badly), tablet (834×1112). Portrait
53
- output on mobile.
51
+ - Devices: desktop (1280x800), mobile (390x844, iPhone emulation), tablet
52
+ (834x1112). Zoom is auto-disabled on mobile and tablet because narrow
53
+ layouts crop badly; both output portrait.
54
54
  - Zoom levels 1.3–1.6 on desktop; always return to 1 before ending.
55
55
  - Login-protected apps: ask the user to run the record once with `--headful`,
56
56
  or open the web UI (`npx -y voila-recorder serve`, port 4477) and sign in —