OpenCut/rust/wasm
Maze Winther 8230faf082 feat: wasm compositor
Made-with: Cursor
2026-04-13 05:01:51 +02:00
..
src feat: wasm compositor 2026-04-13 05:01:51 +02:00
Cargo.toml feat: wasm compositor 2026-04-13 05:01:51 +02:00
README.md refactor: split effects and masks into dedicated rust crates, introduce MediaTime and FrameRate 2026-04-07 01:09:13 +02:00

README.md

opencut-wasm

Shared video editor logic compiled to WebAssembly. Used by the OpenCut web app.

Install

npm install opencut-wasm

Usage

import { formatTimecode, mediaTimeFromSeconds } from "opencut-wasm";

const ticks = mediaTimeFromSeconds(1.5);
const label = formatTimecode({ ticks });

All exports are documented in the TypeScript definitions.

Source

Functions are implemented in Rust under rust/crates/. This package is the compiled WebAssembly output — do not edit it directly.

Local development

The web app depends on the published opencut-wasm package by default. If you are editing the WASM source in this repo and want apps/web to use your local build instead:

# From the repo root
bun run build:wasm

cd rust/wasm/pkg
bun link

cd ../../../apps/web
bun link opencut-wasm

While you work, rebuild on changes from the repo root:

bun dev:wasm