📷

ShotBar

Screenshots without finger gymnastics

ShotBar is a clean macOS menu bar app for screenshots. One-tap capture. Custom F1–F3 hotkeys. Crisp Retina output. No clutter.

macOS 15.5+
Swift 5.9+
ScreenCaptureKit
MIT License
🎯

Three capture modes

Selection drag, active window, or full screen(s). Optimized for multi‑display setups.

⚡

F‑key hotkeys

Assign F1, F2, F3 to modes you use most. No more ⌃⇧⌘ finger yoga.

💾

Save how you like

Clipboard or files, PNG (lossless) or JPEG (HQ). Smart timestamped filenames.

🖥️

Retina‑crisp output

Correct coordinate mapping across scaled and multiple displays. Looks sharp everywhere.

🔒

Privacy‑friendly

App‑sandboxed. Requires only Screen Recording permission. No accessibility access, no data collection.

🔔

Instant feedback

Lightweight HUD to confirm your capture and optional shutter sound so you never miss a shot.

Built for speed

Default shortcuts that just make sense — and you can change them anytime in Preferences.

Get ShotBar

Modern, minimal, maintainable

SwiftUI UI. ScreenCaptureKit for capture. Combine for state. Clean services + models architecture.

Architecture

Clear separation of concerns: Models, Services, UI, and Components. Hotkeys and capture are injectable services coordinated by AppServices.

ShotBarApp/
├─ Models/            # Preferences, Hotkey, Enums
├─ Services/          # HotkeyManager, ScreenshotManager
├─ UI/                # Menu & Preferences (SwiftUI)
└─ Components/        # Selection overlay, Toast
                    

Why it’s reliable

  • Uses ScreenCaptureKit for crisp, future‑proof capture
  • Hotkeys with stable Carbon Event Manager
  • Graceful fallbacks and error handling
  • Retina + multi‑display correctness

Download & install

Runs on macOS 15.5 or later. Unsigned for now — right‑click the app and choose Open the first time.

git clone https://github.com/aneesahammed/ShotBarApp.git
cd ShotBarApp
xcodebuild -scheme ShotBarApp -configuration Release build
            

FAQ & troubleshooting

App won’t open

Right‑click the app in Applications → Open → Open (unsigned first run).

No screenshots are captured

Grant Screen Recording permission: System Settings → Privacy & Security → Screen Recording.

Function keys don’t trigger

System Settings → Keyboard → enable “Use F1, F2, etc. keys as standard function keys”.

Blurry output?

ShotBar captures at native resolution. Check display scaling settings if output appears soft.

Open‑source & MIT licensed

Contributions welcome — new capture modes, formats, accessibility, and performance work.

Join discussions →