Thanks to visit codestin.com
Credit goes to github.com

Skip to content

vikasexcel/ShotPerfect

Repository files navigation

Shot Perfect

An open-source alternative to CleanShot X for macOS. Capture, edit, and enhance your screenshots with professional quality.

Shot Perfect is a fast, lightweight screenshot tool built with Tauri + React. It provides a powerful yet simple workflow for capturing screenshots, editing them with backgrounds/effects/annotations, and exporting quickly.

Background

Clean screenshot workflows usually need three things: capture fast, polish fast (background/shadow/roundness), and annotate fast (arrows, labels). Shot Perfect is a macOS-native app that keeps everything local and lightweight.

Features

Capture Modes

  • Region capture: Select any area of your screen (⌘⇧2, enabled by default)
  • Fullscreen capture: Capture your entire screen (⌘⇧F, enable in Preferences)
  • Window capture: Capture a specific window (⌘⇧D, enable in Preferences)

Image Editing

  • Background library: Curated wallpapers, Mac assets, and mesh patterns
  • Custom backgrounds: Solid colors and transparent checkerboard
  • Effects: Blur + noise controls
  • Shadow + roundness: Tune depth and corner radius
  • Export: Save at high quality for docs, decks, and social

Annotation Tools

  • Shapes: Circle, rectangle, line, arrow
  • Text: Add text with adjustable size
  • Numbered labels: Auto-incrementing badges for step-by-step callouts
  • Editability: Select, move, and delete annotations
  • Styling: Colors, opacity, borders, alignment

OCR (Optical Character Recognition)

  • Text extraction: Extract text from screenshots using OCR
  • Full image processing: Recognizes text from the entire edited image including annotations
  • Copy to clipboard: Easily copy extracted text for use elsewhere
  • Automatic preprocessing: Image enhancement (grayscale, contrast, brightness) for better accuracy
  • Auto-rotation: Automatically detects and corrects rotated text
  • Offline support: OCR works fully offline with bundled Tesseract.js and language data

Workflow

  • Global shortcuts: Capture from anywhere, even when hidden
  • Auto-apply: Apply default background and save without opening the editor
  • Clipboard: Copy to clipboard after capture/export
  • Preferences: Save directory, defaults, and shortcut settings persist
  • Menu bar: Accessible from the menu bar
  • Native performance: Rust + Tauri
  1. Grant Screen Recording permission when prompted

Note: Shot Perfect is ad-hoc signed. macOS Gatekeeper may warn for apps that aren’t notarized. You can inspect the source and build it yourself.

Build from source

git clone https://github.com/vikasexcel/ShotPerfect.git
cd ShotPerfect

pnpm install

pnpm tauri build

The installer will be located in src-tauri/target/release/bundle/

Requirements

  • Node.js: 18+
  • pnpm
  • Rust: latest stable

Required permissions

On first launch, macOS will request Screen Recording permission:

  1. Go to System Settings → Privacy & Security → Screen Recording
  2. Enable Shot Perfect
  3. Restart the application if needed

This permission is required for the app to capture screenshots of your screen.

Usage

Quick Start

  1. Launch Shot Perfect from Applications (or use the menu bar icon)
  2. Capture:
    • Default: ⌘⇧2 (region)
    • Optional (enable in Preferences): ⌘⇧F (fullscreen), ⌘⇧D (window)
  3. Edit (background/effects/shadow/roundness)
  4. Annotate (shapes, arrows, text, numbered labels)
  5. Extract text: Use the "Extract Text" button to run OCR on your screenshot
  6. Export: ⌘S to save, ⇧⌘C to copy to clipboard

Auto-apply workflow

For faster workflows, enable Auto-apply background on the main screen:

  1. Toggle on "Auto-apply background" on the main page
  2. Set your preferred default background in Preferences
  3. Capture a screenshot - it will automatically apply the background and save instantly
  4. No editor needed - perfect for quick captures with consistent styling

Keyboard Shortcuts

Capture shortcuts are customizable in Preferences.

Capture Shortcuts

Action Default Shortcut
Capture Region ⌘⇧2
Capture Fullscreen ⌘⇧F (disabled by default)
Capture Window ⌘⇧D (disabled by default)
Cancel Selection Esc

Editor Shortcuts

Action Shortcut
Save Image ⌘S
Copy to Clipboard ⇧⌘C
Undo ⌘Z
Redo ⇧⌘Z
Delete Annotation Delete or Backspace
Close Editor Esc

Development

This repo contains:

  • The desktop app (Tauri + Vite) at the repo root
  • The landing site (Next.js) in bettershot-landing/

Desktop app (Tauri)

pnpm tauri dev

Other useful commands:

pnpm lint:ci
pnpm test:rust
pnpm tauri build

Landing site (Next.js)

cd bettershot-landing
pnpm install
pnpm dev

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published