ntfyme is a native macOS menu bar client for ntfy (https://ntfy.sh), the simple, self-hostable HTTP-based pub/sub notification service. It lives quietly in your menu bar, holds a streaming connection to every topic you subscribe to, and turns each message into a proper macOS notification with sound, an inline thumbnail, and an attached file when present.
KEY FEATURES
- Menu bar agent: no Dock icon, no window clutter. A bell with a red dot tells you when something new arrived.
- Multi-topic subscriptions: subscribe to any topic on ntfy.sh, on your own self-hosted ntfy server, or a mix. Each subscription can use its own server and bearer token.
- Per-topic appearance: pick an icon and color for each subscription so messages from your backups, your home automation, and your CI all look distinct in the popup and history.
- Rich notifications: title, body, priority chevrons (Max and High in red, Low and Min in grey), and emoji prefixes derived from ntfy's tag shorthand. Clickable URLs in message bodies are detected automatically.
- Attachments: image attachments appear as inline thumbnails right in the popup and history. Other files show as a paperclip chip with filename and size; click to open. Bearer tokens are forwarded so previews and downloads work on protected topics.
- Configurable sound: pick the system default or one of fourteen named macOS sounds, with a preview button. Optionally set a separate, more attention-grabbing sound for High and Max priority messages.
- Searchable history: every notification you have received, filterable by topic and searchable by text. Survives restarts.
- Pause and resume notifications without unsubscribing: your topics stay connected and the history keeps building; you just stop being interrupted.
- Launch at login: opt in from Settings and ntfyme is back in your menu bar after every reboot.
- Localized: Settings includes a language picker. Ships with English; more languages added as translations land.
- Privacy by design: runs in the macOS App Sandbox. No analytics, no tracking, no third-party SDKs. The only network connection is to the ntfy server(s) you configure.
HOW IT WORKS
ntfyme connects to {server}/{topic}/json for each subscription and reads messages off a long-lived HTTP stream, the same mechanism the official ntfy web client uses. When a message arrives the app posts a local notification. macOS Push Notifications and APNs are NOT involved.
This means the app must be running to receive. Launch at Login covers that. Battery and bandwidth use are negligible since idle streams cost almost nothing.
ntfyme is an independent client and is not affiliated with the ntfy project.