zoomcap
v0.1.2
Published
Record your screen from the terminal with pixel-exact click tracking, then edit with auto-zooms, a smooth cursor and click sounds at zoomcap.live
Downloads
52
Maintainers
Readme
zoomcap
Terminal screen recorder for zoomcap.live — macOS.
Records your screen with system audio + microphone, without the OS cursor, while tracking every mouse move and click. When you stop, it opens the ZoomCap web editor, which uses that data to generate auto-zooms at your clicks, a buttery smoothed cursor you can resize, click sounds, and motion blur — Screen Studio-style results, from one command.
npx zoomcap recordOn macOS 15+ it uses a native ScreenCaptureKit recorder: captures system audio + mic, never freezes when you switch Spaces/desktops, and puts a ● REC menu-bar item up top (Stop / Mark Zoom) so you're not tied to the terminal. Older macOS falls back to an ffmpeg recorder (video only).
Stop with q, ⌃⌥S from anywhere, or the menu-bar item. The editor opens with
your recording — nothing is uploaded; the video moves from the CLI to your
browser over localhost and stays on your machine.
Commands & options
npx zoomcap record [options]
npx zoomcap displays # list displays
--display <n> Display to record (default 0)
--fps <n> Capture frame rate (default 30)
--os-cursor Bake the macOS cursor into the video (disables the synthetic cursor)
--no-open Print the import link instead of opening the browser
-o, --out <dir> Output directory (default ~/Movies/ZoomCap/<timestamp>)
--app-url <url> Editor origin (default https://zoomcap.live)While recording: q/Ctrl+C stop · ⌃⌥S stop (global) · ⌃⌥Z drop a zoom mark.
Permissions (first run)
Grant your terminal app both of these in System Settings → Privacy & Security, then restart the terminal:
- Screen Recording — the capture itself (+ system audio)
- Microphone — to record your voice (skip it with
--no-mic) - Accessibility (and Input Monitoring on newer macOS) — click/cursor tracking
Without the second one the recording still works, but there's no click data for auto-zoom.
Output
Each recording folder contains screen.mp4 and zoomcap.meta.json (cursor
path, clicks, timings). Lost the browser tab? Drag both files onto
zoomcap.live/import any time.
Notes
- ffmpeg: uses your
ffmpegfrom PATH when available (Homebrew), otherwise falls back to the bundledffmpeg-static. Override withZOOMCAP_FFMPEG. - Encoding:
h264_videotoolbox(hardware) withlibx264fallback. - Multi-display setups: display indexes come from NSScreen order; if the wrong
screen is captured, pick another index from
zoomcap displays. - macOS only for now. Windows is planned — meanwhile the browser recorder at zoomcap.live works everywhere.
