A lightweight macOS & Windows menu bar app for capturing screenshots (PNG), video (MP4), and animated GIFs of a selected screen region.
Tiny Clips
A lightweight menu-bar (macOS) and system-tray (Windows) app for capturing screenshots (PNG), video (MP4), and animated GIFs of a selected screen region โ on macOS and Windows.
Features
- Screenshot โ Select a region, screen, or window and capture a PNG screenshot
- Video Recording โ Record to MP4 with hardware-accelerated H.264 encoding
- GIF Recording โ Record a screen region as an animated GIF
- Capture Picker โ Choose Region, Screen, or Window before any capture
- Editor & Trimmers โ Post-capture screenshot editor plus video and GIF trimmers
- Menu Bar / Tray App โ Lives in the macOS menu bar or Windows system tray with no Dock/taskbar icon
- Region Selection โ Drag to select any portion of any screen
- Global Hotkeys โ Quick capture from anywhere
- Configurable โ Save location, clipboard, reveal-in-Finder/Explorer, GIF quality, trimmer toggles, and more
macOS uses Sparkle for auto-updates; Windows distributes via winget (winget upgrade) and the Microsoft Store.
macOS
Requirements
- macOS 15.0 (Sequoia) or later
- Xcode 16.0 or later (to build from source)
Installation
Homebrew
brew tap jamesmontemagno/tiny-clips https://github.com/jamesmontemagno/tiny-clips
brew trust jamesmontemagno/tiny-clips 2>/dev/null || true
brew install --cask tiny-clips
The brew trust line is only needed on Homebrew versions that require trust for non-official taps; it safely no-ops elsewhere.
Download
Download the latest release from the Releases page.
Build from Source
- Clone the repository:
git clone https://github.com/jamesmontemagno/tiny-clips.git
cd tiny-clips
- Open in Xcode:
open mac/TinyClips.xcodeproj
- Add the Sparkle package dependency (see Sparkle Setup)
- Build and run (โR)
Permissions
TinyClips requires Screen Recording permission. On first launch, macOS will prompt you to grant access. After granting, restart the app.
Keyboard Shortcuts
| Action | Shortcut | |--------|----------| | Screenshot | โโฅโ5 | | Record Video | โโฅโ6 | | Record GIF | โโฅโ7 | | Picker: Region / Screen / Window | R / S / W | | Picker: Cancel | Esc | | Stop Recording | โ. | | Settings | โ, |
Windows
A native WinUI 3 / Windows App SDK port lives under /windows.
Requirements
- Windows 11 22H2 (build 22621) or later
- .NET 10 SDK and Windows SDK
10.0.26100(to build from source)
Installation
winget โ Tiny Clips is published in the winget community repository, so you can install it from any Windows 11 terminal:
winget install Refractored.TinyClips
Keep it up to date with:
winget upgrade Refractored.TinyClips
A Microsoft Store listing (with optional Pro add-ons) is planned.
Build from Source
WinUI 3 requires an explicit platform (x64 or ARM64; AnyCPU is not supported).
dotnet restore windows/TinyClips.Windows.slnx
dotnet run --project windows/src/TinyClips.App/TinyClips.App.csproj -c Debug -p:Platform=x64
See the Windows README for full build, layout, and CI details.
Keyboard Shortcuts
| Action | Shortcut | |--------|----------| | Screenshot | Ctrl+Shift+5 | | Record Video | Ctrl+Shift+6 | | Record GIF | Ctrl+Shift+7 | | Picker: Region / Screen / Window | R / S / W | | Picker: Cancel | Esc | | Stop Recording | Ctrl+Shift+S |
Usage
- Click the Tiny Clips icon in the menu bar (macOS) or system tray (Windows)
- Choose Screenshot, Record Video, or Record GIF
- Choose Region, Screen, or Window in the capture picker (with an optional countdown)
- For region recordings, confirm audio/mic options in the floating Record panel
- Click the floating Stop button when done (or use the stop shortcut)
Settings
| Option | Description | |--------|-------------| | Save Directory | Where captures are saved (default: Pictures/TinyClips) | | Copy to Clipboard | Auto-copy captures to clipboard | | Reveal in Finder / Explorer | Reveal the saved file after capture | | GIF Frame Rate | 5โ30 fps (default: 10) | | GIF Max Width | 320โ1920 px (default: 640) | | Video Frame Rate | 24, 30, or 60 fps | | Open Trimmer | Show trim editor after recording |
Sparkle Setup (macOS)
Sparkle must be added manually via Xcode:
- Open
mac/TinyClips.xcodeprojin Xcode - Go to File โ Add Package Dependencies...
- Enter URL:
https://github.com/sparkle-project/Sparkle - Select version rule: Up to Next Major Version from
2.8.1 - Add the
Sparkleframework to theTinyClipstarget
App Store / Store Variants
- macOS: to ship both a direct (Sparkle, non-sandbox) build and a Mac App Store (sandboxed, no Sparkle) build from one codebase, see docs/app-store-variant-setup.md.
- Windows: the WinUI 3 app targets a free winget/direct build now and a Microsoft Store listing later; see
/plans/windows-winui3-port-plan.md.
Architecture
macOS
ScreenCaptureKit (SCStream / SCScreenshotManager)
โ
โโโ ScreenshotCapture โ CGImageDestination โ PNG
โโโ VideoRecorder โ AVAssetWriter โ MP4
โโโ GifWriter โ CGImageDestination โ GIF
Windows
Windows.Graphics.Capture (Direct3D11CaptureFramePool)
โ
โโโ ScreenshotService โ BitmapEncoder โ PNG/JPEG
โโโ VideoRecordingService โ Media Foundation โ H.264 MP4
โโโ GifRecordingService โ BitmapEncoder โ GIF
See CONTRIBUTING.md and the Windows README for component-level detail.
License
MIT License. See LICENSE for details.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Found a bug or have a feature request? Open an issue.
Release Tagging Helpers
Create one or both release tags by selecting platforms (--mac, --windows):
pwsh -File scripts/create-release-tags.ps1 v1.0.8 -Mac -Windows -Push
creates: v1.0.8-mac and v1.0.8-windows
scripts/create-release-tags.sh v1.0.8 --mac --windows --push
creates: v1.0.8-mac and v1.0.8-windows
Copilot extension tool is also available in this repo:
releasetaggingcreate_tags version=v1.0.8 mac=true windows=true push=true