Swift

better-shot

Screenshot, screen recording, and video editor for macOS. Native SwiftUI app with capture deck, 75+ customizable shortcuts, URL scheme automation, and self-hosted cloud sharing. Open-source alternative to CleanShot X and Loom.

K

KartikLabhshetwar

Dernière activité 27 sept. 2026
KartikLabhshetwar/better-shot

2,4 k

étoiles

141

forks

5

issues ouvertes

annotation-toolautomationcapture-toolcleanshot-alternativecloudflare-r2loom-alternativemacosmacos-appnative-macosocropen-sourceprivacyraycastscreen-recorderscreencapturekitscreenshot-toolswiftswiftuiurl-schemevideo-editor

Ce README est souvent en anglais.

BetterShot clover icon

BetterShot

Capture, edit, and share your screen. Native on macOS.

KartikLabhshetwar%2Fbetter-shot | Trendshift

Latest release macOS 14 or later Build status BSD 3-Clause license

Download · Website · Changelog · Contribute · Report a bug

BetterShot is a free, open-source Mac app for screenshots, screen recordings, and image and video editing. No account or subscription.

BetterShot image editor with editable annotations and background controls

Install

brew install --cask bettershot

Or download the Apple silicon or Intel .dmg from Releases.

Requires macOS 14 or later. Microphone narration needs macOS 15, and narration subtitles and teleprompter speech tracking need macOS 26.

Features

  • Screenshots: region, window, fullscreen, and scrolling capture, plus OCR and a color picker.
  • Image editor: arrows, shapes, text, numbered markers, highlights, blur, and pixelate. Crop, rotate, flip, and frame captures with backgrounds, padding, corners, and shadow.
  • Recording: a display, window, or area, with system audio, microphone, camera, and a teleprompter.
  • Video editor: cuts, speed, zooms, captions, masks, camera layouts, cursor styles, and 3D shots. Export MP4 or MOV at 30 or 60 fps.
  • Sharing: copy, save, pin, or drag from the floating preview, browse everything in the Media Gallery, and share links through your own Cloudflare R2 bucket.

Original captures and source recordings are never modified.

See the video editor

BetterShot video editor with zoom controls, a clip timeline, and cut markers

Getting started

  1. Open BetterShot. Setup asks for Screen Recording and Accessibility access and where to save screenshots.
  2. Press ⌘⇧4 and select an area.
  3. Copy, Save, Edit, Pin, or Share from the floating preview.
Action Shortcut
Region screenshot ⌘⇧4
Fullscreen screenshot ⌘⇧3
Capture previous region ⌘⇧1
Capture and recording bar ⌘⇧2
Recording options ⌘⇧5
OCR text scan ⌘⇧O
Color picker ⌘⇧C

Change shortcuts in Settings > Shortcuts. New installs save screenshots to the Desktop; change the folder, file names, or automatic saving in Settings > General > Saving.

Permissions

Permission Used for
Screen & System Audio Recording Screenshots, recordings, and system audio
Accessibility Global shortcuts
Input Monitoring Cursor effects and shortcut overlays. Plain typing is never recorded.
Microphone Voice in recordings
Camera Camera recording

If capture or shortcuts still fail after granting access, quit and reopen BetterShot. When BetterShot opens at login before macOS applies Screen Recording access, it offers to restart itself the first time you capture.

Cloud sharing

Optional. Sharing uploads to a Cloudflare R2 bucket you own.

  1. Create an R2 bucket with a public URL and an API token with Object Read & Write access.
  2. Enter the credentials in Settings > Sharing, choose the bucket's Jurisdiction if it has one, and click Test Connection.
  3. Click Share on any capture to upload it and copy the link.

Credentials are stored in your login Keychain, and anyone with a link can view it. Outside of sharing, BetterShot only goes online to check GitHub for updates.

Automation

Trigger captures from Shortcuts, Raycast, or the terminal:

open 'bettershot://capture/region'
Route Action
capture/region Region screenshot
capture/fullscreen Fullscreen screenshot
capture/window Window screenshot
capture/scroll Scrolling capture
ocr OCR text scan
color-picker Color picker
record Start a recording
settings Open Settings

Build from source

Requires Xcode 26 and XcodeGen.

brew install xcodegen
git clone https://github.com/KartikLabhshetwar/better-shot.git
cd better-shot
make release
open .build/Build/Products/Release/BetterShot.app

See CONTRIBUTING.md for Xcode setup, the code map, and tests.

Contributing

Issues and pull requests are welcome. Read the contributor guide and Code of Conduct first.

Built by Kartik Labhshetwar and contributors. If BetterShot helps you, consider supporting its development.

Projets similaires

Open-source screenshot and screen recording for macOS. The free, native alternative to CleanShot X. Built with Swift 6.0 and SwiftUI.

Swiftannotationcleanshot-alternativemacos
Llzhgus
1,4 k étoiles78

An open-source native macOS screenshot and screen recording app. A CleanShot X alternative.

Swiftcapturecleanshot-alternativerecording-app
Dduongductrong
3,2 k étoiles183

The macOS screen recorder for the rest of us - always free and open source with a native look and feel 📺

Swiftappleaudiorecorderhevc
Jjsattler
1,7 k étoiles73