Skip to content

8tp/ScreenCap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ScreenCap Logo

ScreenCap — Free macOS Screenshot & Screen Recording App

The open-source CleanShot X alternative for macOS.
Screenshots, screen recording, annotation, OCR, scrolling capture, GIF export & color picker — all free, all local.

macOS 14+ Swift 5.9+ MIT License Dependencies: 1 Size ~2MB No network

No account. No subscription. No telemetry. Just screenshots.


Why ScreenCap over CleanShot X, Snagit, or macOS Screenshots?

Paid Tools (CleanShot X, Snagit) macOS Built-in ScreenCap
Price $29–89/yr Free Free forever
Area capture with dimensions Yes No Yes
Annotation editor Yes Markup only Yes
Scrolling capture Yes No Yes
Screen recording Yes Yes Yes
OCR text extraction Yes No Yes
Color picker Yes No Yes
Pin to desktop Yes No Yes
GIF export Yes No Yes
Open source No No Yes
Privacy (no network) Varies Yes Yes

Features

Capture

  • Fullscreen -- Instant full-screen capture with flash & sound
  • Area Select -- Crosshair overlay with live pixel dimensions, shift-to-square
  • Window -- Hover to highlight, click to capture (with optional shadow)
  • Scrolling -- Auto-scroll and stitch into a single tall image

Record

  • Screen Recording -- Full screen or selected area to MP4 (H.264)
  • GIF Export -- Convert any recording to GIF with configurable FPS and size
  • Recording Toolbar -- Floating pause/stop/timer controls

Tools

  • OCR -- Select a region, extract text to clipboard via Apple Vision
  • Color Picker -- Magnifier loupe with hex/RGB, click to copy

Edit

  • Annotation Editor -- Arrow, rectangle, ellipse, line, text, freehand, highlight, blur/pixelate, numbered steps, crop
  • Undo/Redo -- Full undo stack for all annotation actions
  • Export -- Save as PNG, JPEG, or TIFF

Extras

  • Floating Thumbnail -- Post-capture preview with drag-and-drop to any app
  • Pin to Desktop -- Always-on-top pinned screenshots with adjustable opacity
  • Launch at Login -- Optional startup toggle from Preferences for installed app bundles
  • Toast Notifications -- Non-intrusive confirmation messages

Keyboard Shortcuts

Shortcut Action
Ctrl+Shift+1 Open the all-in-one capture toolbar
Ctrl+Shift+3 Capture Fullscreen
Ctrl+Shift+4 Capture Area
Ctrl+Shift+5 Capture Window
Ctrl+Shift+6 Capture Scrolling
Ctrl+Shift+7 Record Screen
Ctrl+Shift+8 Record Area
Ctrl+Shift+9 OCR Screen Region
Ctrl+Shift+0 Color Picker

ScreenCap now defaults to a conflict-free shortcut profile on first launch so it does not fire alongside Apple's built-in screenshot shortcuts. You can switch to a Cmd+Shift compatibility profile in Preferences, but macOS screenshot shortcuts should be disabled first if you do.


Installation

Build from Source

git clone https://github.com/8tp/ScreenCap.git
cd screencap/ScreenCap
swift build -c release

Open in Xcode

cd screencap/ScreenCap
open Package.swift
# Set signing to "Sign to Run Locally"
# Build and run (Cmd+R)

Requirements

  • macOS 14 (Sonoma) or later
  • Xcode 15+ (for building)
  • Screen Recording permission (prompted on first use)

Architecture

ScreenCap/Sources/
  App/           App lifecycle, menubar, permissions
  Capture/       Screenshot engine, area/window/scroll capture, recording, GIF
  Editor/        Annotation editor, canvas, 10 drawing tools, background presets
  Tools/         OCR (Vision), color picker, magnifier
  UI/            Floating thumbnail, pin window, preferences, onboarding, toasts
  Utilities/     Global hotkeys, image I/O, user defaults

Runtime Flow

  1. MenuBarController receives menu and hotkey actions.
  2. Capture actions route into ScreenCaptureEngine, ScreenRecorder, ScrollCapture, OCRTool, or ColorPickerTool.
  3. Captures and recordings feed FloatingThumbnailController.
  4. Thumbnails can open AnnotationEditorController or pin images to the desktop.
  5. PreferencesView updates shared defaults and shortcut configuration.

Tech Stack

Layer Technology
UI Framework SwiftUI + AppKit
Screen Capture ScreenCaptureKit / CGWindowListCreateImage
Recording AVFoundation + AVAssetWriter
OCR Vision (VNRecognizeTextRequest)
Image Filters CoreImage (CIPixellate, CIGaussianBlur)
Global Hotkeys soffes/HotKey
Persistence UserDefaults

Preferences

Tab Settings
General Save location, launch at login, image format (PNG/JPEG/TIFF), JPEG quality, clipboard/thumbnail/sound toggles
Capture Capture delay, hide desktop icons, window shadow
Shortcuts Switch between conflict-free Ctrl+Shift and macOS-style Cmd+Shift shortcut profiles
Advanced Thumbnail position & duration, reset all

Privacy

ScreenCap makes zero network calls. Everything runs locally on your Mac. No accounts, no analytics, no tracking. Your screenshots never leave your machine.


Contributing

See CONTRIBUTING.md for guidelines.


License

MIT -- free for personal and commercial use.


ScreenCap — the free, open-source screenshot tool for macOS. Built with Swift, SwiftUI, and AppKit.

About

Free, open-source macOS screenshot & screen recording app with annotation editor, OCR, scrolling capture, GIF export, and color picker. A native CleanShot X alternative — no account, no subscription, no telemetry.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages