hero.mp4
CalcFocus is an open-source desktop recorder, screenshot tool, and editor for walkthroughs, demos, tutorials, and product videos.
- Record a screen or window and jump straight into the editor
- Capture screenshots and continue in the built-in image editor
- Add zoom spans, speed regions, annotations, cursor polish, and frame styling
- Export to MP4 or GIF and reopen saved
.calcfocusprojects later
- macOS
- Windows
- Linux
- Record an entire screen or a single window
- Start editing immediately after recording
- Microphone recording
- System audio recording where the platform supports it
- Native ScreenCaptureKit helpers on macOS
- Native WGC + WASAPI helpers on Windows
- Browser/FFmpeg-based capture paths on Linux
- Timeline trimming
- Speed-up / slow-down regions
- Manual zoom regions
- Automatic zoom suggestions
- Cursor smoothing, sizing, motion blur, and click bounce
- Annotations
- Background styling with wallpapers, gradients, solid fills, padding, rounded corners, blur, and shadows
- Project save + reopen with
.calcfocus
- Capture a screen or window
- Interactive area screenshot on macOS
- Built-in image editor after capture
- Wallpaper / gradient / solid / transparent backgrounds
- Adjustable padding, border radius, and shadow intensity
- Save as PNG or copy directly to the clipboard
- MP4 export
- GIF export
- Aspect ratio controls
- Quality settings
- Electron
- React
- TypeScript
- Vite
- PixiJS
- WebCodecs
git clone https://github.com/08820048/CalcFocus.git
cd CalcFocus
npm install
npm run devUseful build commands:
npm run build
npm run build:mac
npm run build:win
npm run build:linuxBuild output goes to release/.
- Pushing to
maintriggers the regular CI build workflow - Pushing a version tag like
v1.0.18triggers the release workflow - The release workflow builds installers and updater metadata for GitHub Releases
More detail is documented in RELEASING.md.
- Packaged releases use GitHub Releases as the default update source
- In-app updates are available only in packaged builds
- If needed, you can override the update feed with
CALCFOCUS_UPDATE_FEED_URL
Linux still relies on browser-oriented capture paths in some cases, so hiding the OS cursor is not always possible. Depending on the setup, recordings may show both the system cursor and the rendered cursor layer.
- Windows: available out of the box
- Linux: typically needs PipeWire-capable environments
- macOS: uses the native ScreenCaptureKit helper path
Local source builds are unsigned by default. If macOS blocks the app after building locally:
xattr -rd com.apple.quarantine "/Applications/CalcFocus.app"Contributions are welcome.
- Website: https://calcfocus.cc
- Issues: https://github.com/08820048/CalcFocus/issues
CalcFocus is licensed under the GNU Affero General Public License v3.0 only (AGPL-3.0-only).
Third-party notices for bundled upstream code and assets are documented in THIRD_PARTY_NOTICES.md.
Thanks to Recordly and OpenScreen. See THIRD_PARTY_NOTICES.md for bundled-license details.
