A minimalist, native menu bar OCR & screen capture tool for macOS.
Built with SwiftUI & Vision Framework. Privacy-first & Open Source.
- 🖥️ Menu Bar Workflow: Unobtrusive menu bar app that stays out of your way.
- ⚡ Instant OCR: Select any screen region to instantly recognize text using Apple's Vision framework.
- 📸 QR & Barcode Scanning: Automatically detects and decodes QR codes and barcodes.
- ✨ Smart Formatting:
- Keep/Remove Line Breaks: Toggle to preserve original formatting or flow text into a single paragraph.
- Auto-Open Links: Detects URLs in captured text and opens them in your browser.
- Auto-Copy: Automatically copies recognized text to clipboard.
- 🔊 Text-to-Speech (TTS): Read recognized text aloud with a single click.
- 📜 History Management: Keeps a history of recent scans for easy access.
- 🔒 Privacy First: All processing happens on-device. No data is sent to the cloud.
Since LuxShot is an open-source project and not distributed via the App Store, you might encounter a security warning when opening it for the first time. This is normal for apps not notarized by Apple.
- Go to the Releases page and download the latest
.zipfile. - Drag
LuxShot.appto your Applications folder. - Right-click (or Control-click) on
LuxShot.appand select Open. - You will see a dialog saying "LuxShot cannot be opened because the developer cannot be verified".
- Click Open (or "Open Anyway").
- Note: If you don't see the "Open" option, go to System Settings > Privacy & Security > Scroll down to Security section > Click "Open Anyway" for LuxShot.
Once you do this once, macOS will remember your choice and you can open the app normally in the future.
- Launch LuxShot: The app runs in your menu bar (look for the [ ] icon).
- Capture:
- Press
Cmd + Shift + E(Global Shortcut) - Or click "New Scan" in the menu bar popover.
- Press
- Select: Drag to select a region on your screen.
- Done: Text is instantly recognized and copied to your clipboard (if Auto-Copy is on).
- Language: Swift 6.2
- UI Framework: SwiftUI + AppKit (NSPopover, NSStatusItem)
- OCR Engine: Vision Framework (
VNRecognizeTextRequest) - Barcode Detection: Vision Framework (
VNDetectBarcodesRequest) - Audio: AVFoundation (
AVSpeechSynthesizer)
- Clone the repository.
- Open
LuxShot.xcodeprojin Xcode. - Ensure the Signing Team is set to your developer account (or None for local testing).
- Build and Run (Command + R).
- macOS 13.0 (Ventura) or later.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Maintained by @lukebuild