Skip to content

cosZone/MoePeek

Repository files navigation

MoePeek Icon

MoePeek

A lightweight, native macOS menu bar translator. Select text, get translation.

English | 中文

GitHub Release Downloads Platform Swift License

MoePeek Preview

Features

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
  • Text-to-speech playback for translated text using Apple's built-in speech synthesis
  • 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

Why MoePeek

  • ~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.

Limitations & Alternatives

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

Installation

Download the latest .dmg or .zip from GitHub Releases and drag MoePeek.app into /Applications.

Usage

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

Default Shortcuts

Action Shortcut
Translate Selection ⌥ D
OCR Screenshot ⌥ S
Manual Input ⌥ A
Clipboard Translation ⌥ V

All shortcuts can be customized in Settings → General.

PopClip Integration

If you use PopClip, you can translate selected text with a single click from the PopClip bar.

Install the extension:

  1. Make sure MoePeek is installed and running.
  2. Download MoePeek.popclipext.zip from the latest release and unzip it.
  3. Remove the quarantine attribute so macOS allows the extension to load:
    xattr -dr com.apple.quarantine /path/to/MoePeek.popclipext
  4. Double-click MoePeek.popclipext — PopClip will install it automatically.
  5. Select any text in any app → click the MoePeek icon in the PopClip bar.

Note: If PopClip shows an error, also make sure MoePeek.app itself has been un-quarantined — see the FAQ below. (Related issue)

FAQ

"MoePeek.app is damaged and can't be opened"

The app is not notarized with Apple, so macOS Gatekeeper may block it. This does not mean the file is corrupted. To fix:

  1. Open Terminal
  2. Run:
sudo xattr -r -d com.apple.quarantine /Applications/MoePeek.app

Then launch the app as usual.

Onboarding screen doesn't appear / want to re-trigger onboarding

Reset all user preferences to restore the first-launch state:

defaults delete com.nahida.MoePeek

Then relaunch the app.

Contributing

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.

Acknowledgements

MoePeek was inspired by Easydict and Bob. Thank you for paving the way.

Built with:

Contributors

Sponsor

Sponsor on Afdian

Star History

Star History Chart

License

AGPL-3.0

About

A lightweight macOS selection translator built with pure Swift 6, featuring on-device Apple Translate for privacy, only 5MB install size and stable ~50MB memory usage. 一款轻量级 macOS 划词翻译工具,纯 Swift 6 开发,设备端 Apple 翻译保护隐私,安装体积仅 5MB,后台运行内存稳定约 50MB

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors

Languages