Skip to content

Latest commit

Β 

History

History
51 lines (32 loc) Β· 2 KB

File metadata and controls

51 lines (32 loc) Β· 2 KB

Setup commands

# Install dependencies (uses Bun)
bun install

# Build all packages
bunx turbo run make

# Run tests and linting
bunx turbo run lint test

# Clean build artifacts
bun run clean

# Build a specific package
bunx turbo run make --filter='<package-name>'

Use bunx (not npx) to run package binaries.

The current Remotion version can be found in packages/core/src/version.ts. The next version should increment the patch version by 1.

Coding style

  • Keep things in one function unless they are composable or reusable.
  • Do not extract single-use helpers preemptively. Inline the logic at the call site unless the helper is reused, hides a genuinely complex boundary, or has a clear independent name that improves the caller.

Test changes

Do not add new tests, including new test cases in existing files, unless the user explicitly asks for them. Edit or remove existing tests, fixtures, and snapshots as needed for feature work, bug fixes, refactors, and PR preparation. Preserve pre-existing user changes.

Running existing tests for validation is allowed.

Internal API optionality

When adding or reviewing TypeScript parameters, React props, or type/interface members, make new internal inputs preferrably nullable (T | null), not optional (?:). Public exported APIs are exempt when requiring the input would be breaking.

Key services

  • Remotion Studio (dev testbed): cd packages/example && bun run dev β€” starts at http://localhost:3000. This is the main dev UI for previewing video compositions.
  • Player testbed: cd packages/player-example && bun run dev β€” for testing @remotion/player changes.
  • Docs site: cd packages/docs && bun run start β€” Docusaurus dev server.

Rendering test videos

From packages/example:

  • bunx remotion compositions β€” list available compositions.
  • bunx remotion render <comp-id> --output ../../out/video.mp4 β€” render a video.
  • bunx remotion still <comp-id> --output ../../out/still.png β€” render a still image.