Skip to content
Rollberry
Docs
Navigation

Quick Start

Capture a page, stitch multiple URLs, and render a project file with the current Rollberry CLI.

First capture#

The simplest useful command is a one-off capture with an explicit output path:

npx rollberry capture https://example.com --out ./artifacts/example.mp4

This run writes three files:

  • ./artifacts/example.mp4
  • ./artifacts/example.manifest.json
  • ./artifacts/example.log.jsonl

Capture localhost#

Rollberry is designed to work well against development servers:

npx rollberry capture http://localhost:3000 \
  --out ./artifacts/local.mp4 \
  --wait-for selector:body

For localhost URLs, Rollberry retries transient connection errors and tolerates localhost HTTPS certificate problems.

Stitch multiple pages into one video#

Pass multiple URLs to capture to create a single output:

npx rollberry capture \
  https://example.com \
  https://example.com/pricing \
  https://example.com/contact \
  --page-gap 1.5 \
  --out ./artifacts/site-tour.mp4

Use --page-gap when you want the last frame of one page to hold briefly before the next page starts.

Start from the sample project#

Use render when you want multiple outputs or scene-by-scene control.

cp rollberry.project.sample.json rollberry.project.json
npx rollberry render ./rollberry.project.json

The bundled sample demonstrates:

  • shared defaults
  • multiple scenes
  • setup actions
  • timeline-driven scroll and interactions
  • named outputs such as desktop and mobile

Render only one output#

You can target a single configured output by name:

npx rollberry render ./rollberry.project.json --output mobile

This is useful when the same project defines desktop and mobile variants but a pipeline only needs one of them.

Common capture flags#

npx rollberry capture https://example.com \
  --out ./artifacts/demo.mp4 \
  --viewport 1920x1080 \
  --fps 60 \
  --duration auto \
  --wait-for selector:main \
  --hide-selector "#cookie-banner"

Common render loop#

npx rollberry render ./rollberry.project.json --force

Use --force when the configured output files already exist.

Where to go next#