Rough Cut
A tiny, fast video editor for social teams
A cut-grade-export editor that opens in two seconds — GPU-graded previews in the browser, renders handled by an FFmpeg pipeline compiled to WASM with a Rust core for the hot paths.
- Year2026
- Runs onDesktop, Web
- DisciplineGraphics & Video Editing

A sample brief, a real product. We wrote this brief ourselves to show how we work; the client and their story are illustrative. The product is not: it was designed and engineered here, and you can use it below. We publish results only for work a client has let us verify, so this page shows none.
The brief
Social teams don’t need a Premiere licence to ship a 40-second reel. Rough Cut is the 20% of an NLE that covers 95% of social work: trim, sequence, grade, caption, export — with a UI a producer learns in one sitting.
The approach
The timeline is a custom React renderer over a Rust document core; colour grades are WebGL shaders applied in real time; export runs FFmpeg in a Web Worker (WASM) with multipart uploads straight to S3 — no render farm, no waiting room.
- Rust edit-graph core, deterministic undo
- FFmpeg-WASM export pipeline in Workers
What shipped
- Per-clip grading with LUTs
- Split, delete, undo and redo
- Scrub with J K L and space
- Caption track with auto-caption
- 9:16, 16:9 and 1:1 export with progress
- Multi-project library and media bin
- Title presets and music
- Share for review with timecoded notes
Under the surface
How it is built
The edit graph is a Rust core compiled to WASM with deterministic undo; React renders the timeline, WebGL shaders grade the preview in real time, and FFmpeg-WASM in Workers exports with multipart S3 uploads.
- Rust document core: every edit replayable
- WebGL LUT pipeline, zero-copy frame path
- Export in Workers — UI never blocks
Considered and turned down
Remotion/server rendering — great for templates, wrong for a hands-on editor’s latency budget.
Stack
The mechanism, working
The part of Rough Cut that was hardest to get right, as a small model you can operate.
GPU grading in the browser
Colour grades are WebGL shaders applied per frame on a zero-copy path. The preview is graded live in the browser, no render farm.
