A lightweight, native macOS menu bar translator. Select text, get translation.
English | 中文
Translation Modes
- Select & Translate: Select text in any app, get instant translation in a floating panel
- OCR Screenshot: Capture a screen region and translate the recognized text
- Clipboard Translation: Translate whatever's on your clipboard
- Manual Input: Type or paste text to translate on demand
Built-in Translation Services
| Free | API | LLM | System |
|---|---|---|---|
| Google Translate | DeepL | OpenAI | Apple Translation |
| Bing Translate | Baidu | Anthropic | (macOS 15+, on-device) |
| Youdao Translate | NiuTrans | DeepSeek | |
| Caiyun | OpenRouter | ||
| DeepLX | 智谱 GLM | ||
| Ollama (local) | |||
| LM Studio (local) |
And More
- Smart language detection across 14 languages, auto-flips translation direction
- Non-activating floating panels that never steal focus from your current app
- 3-tier text grabbing: Accessibility API → AppleScript → Clipboard fallback
- Fully customizable keyboard shortcuts
- Built-in auto-updater via Sparkle
- ~5 MB app size: Pure Swift 6, only 3 dependencies. No Electron, no WebView.
- ~50 MB background memory: Systematic memory leak prevention for long-running sessions.
- Privacy-friendly: Apple Translation runs entirely on-device.
- Open source: AGPL-3.0 licensed. Issues and feedback welcome.
MoePeek is a personal, AI vibe-coded side project. It works well for my own use cases, but it's not designed to be a polished, production-grade tool — there are plenty of edge cases in text selection and window handling that commercial tools have spent years ironing out, and MoePeek likely misses many of them.
If you need a more robust solution, these apps are excellent:
- Clicknow — feature-rich, actively maintained selection translator
- PopClip — the gold standard for macOS text selection actions, with a rich extension ecosystem
Download the latest .dmg or .zip from GitHub Releases and drag MoePeek.app into /Applications.
On first launch, MoePeek walks you through an onboarding flow to grant the required permissions:
- Accessibility: Needed to grab selected text via the Accessibility API
- Screen Recording: Needed for OCR screenshot translation
| Action | Shortcut |
|---|---|
| Translate Selection | ⌥ D |
| OCR Screenshot | ⌥ S |
| Manual Input | ⌥ A |
| Clipboard Translation | ⌥ V |
All shortcuts can be customized in Settings → General.
If you use PopClip, you can translate selected text with a single click from the PopClip bar.
Install the extension:
- Make sure MoePeek is installed and running.
- Download
MoePeek.popclipext.zipfrom the latest release and unzip it. - Double-click
MoePeek.popclipext— PopClip will install it automatically. - Select any text in any app → click the MoePeek icon in the PopClip bar.
The app is not notarized with Apple, so macOS Gatekeeper may block it. This does not mean the file is corrupted. To fix:
- Open Terminal
- Run:
sudo xattr -r -d com.apple.quarantine /Applications/MoePeek.appThen launch the app as usual.
Reset all user preferences to restore the first-launch state:
defaults delete com.nahida.MoePeekThen relaunch the app.
Issues and PRs are welcome! A few things to know:
- I work a day job, so I may not respond immediately — I typically batch-process issues and PRs on weekends.
- Feel free to fork and build your own version. Per the AGPL-3.0 license, derivative works must also be open source.
MoePeek was inspired by Easydict and Bob. Thank you for paving the way.
Built with:
- KeyboardShortcuts by Sindre Sorhus
- Defaults by Sindre Sorhus
- Sparkle for auto-updates