Camcorder. A screen recorder and editor that makes webcam and product-demo video look polished.
- Role
- Founder · product, design and engineering
- Platform
- Mac (Apple Silicon)
- Status
- Building
- Stack
- Electron, React, TypeScript, Rust, Next.js, Better Auth, Postgres, Cloudflare R2
Overview
Camcorder is a screen recorder and editor for product demos and webcam video. A raw capture goes in and comes out ready to post, whether that’s on X, YouTube, a docs page or a landing page. It’s for people who show software on video, in demos, tutorials and launch clips, and want it to look considered without learning a full video editor.
What it does
- Records a window or the whole screen, with mic, system audio and a webcam picture-in-picture.
- Zooms that follow your cursor, plus manual zooms and pans, cursor smoothing and click effects.
- Frames the shot with backgrounds, gradients, shadows, rounded crops and motion blur.
- Edits by transcript. Captions are transcribed on-device; delete words in the transcript to cut them from the video.
- Edits by chat. Describe a change and it lands on the timeline as real, undoable edits. You bring your own model key, and it’s off by default.
- A multi-track timeline. Clips keep their place, split at the playhead, shuttle with J, K and L, and music and voiceover get their own rows.
- Shares in one step. Export, upload and copy a link at once; viewers can react and comment on the watch page.
How it’s built
Camcorder is an Electron app with a React and TypeScript editor. Recording uses each platform’s native capture: ScreenCaptureKit on macOS, Windows Graphics Capture, and PipeWire on Linux. Preview and export run through the same native Rust compositor, so the frame you see in the editor is the frame the export writes. It renders on Metal, Direct3D 11 or wgpu depending on the platform, with a CPU fallback when there’s no GPU encoder. Claude Code and other MCP apps can edit the open project, and a headless command-line tool records and renders for scripts and CI.
Most recently I built the accounts and sharing layer: a Next.js service with Better Auth and Postgres for accounts, and Cloudflare R2 for the video itself. I chose R2 over a video platform on purpose. The app already exports a finished MP4, so paying for transcoding and a hosted player bought nothing, and R2 charges nothing for egress, which is the cost that makes video hosting expensive. The trade is no adaptive bitrate, which is fine for screen recordings sent to colleagues. The bucket stays private: every view gets its own short-lived link, so revoking a share actually revokes it.
Where it is now
In active development. Version 1.12.2 is packaged as a signed, notarized .dmg for Apple Silicon Macs and updates itself from Camcorder’s own feed. The code builds for Windows and Linux, but those builds aren’t published yet.
- 1 / 4

The editor: a framed preview, composition controls and a multi-track timeline. - 2 / 4

Composition controls for background, grain, format and shadow. - 3 / 4
Editing a recording, start to finish. - 4 / 4
The brand system: a mark on a 24-unit grid, Tally red and Geist Mono.