--- id: desktop-notifier version: "6.2.0" license: MIT license_treatment: permissive maintenance: active --- # desktop-notifier — Python library for cross-platform desktop notifications License: permissive · Maintenance: active · Downloads: 114.3K/mo ## What it is and what it does Desktop-notifier is a Python library that sends native desktop notifications across Linux, macOS, Windows, and iOS using each platform's native notification API. It wraps dbus on Linux, the Notification Center framework on macOS and iOS, and WinRT on Windows, presenting a unified async interface. The library supports advanced features where the platform allows: clickable notifications with user callbacks, multiple action buttons, reply fields for inline responses, notification sounds, thread grouping, and limiting notification center capacity. Any unsupported feature on a given platform is silently ignored rather than raising an exception, allowing code to degrade gracefully. The main API is async-only, requiring a running event loop for callback execution—on macOS this typically means integrating with CFRunLoop via rubicon-objc. Use it for: - Alert users to application events (file downloads, background task completion) without blocking the main thread. - Build interactive notifications with action buttons and reply fields for chat or messaging applications. - Integrate notifications into cross-platform desktop applications that need to work on Linux, macOS, and Windows. - Implement notification sounds and urgency levels for time-sensitive alerts. - Group related notifications by thread to reduce notification center clutter. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Sends cross-platform desktop notifications from Python with support for callbacks, action buttons, reply fields, and sounds on Linux, macOS, Windows, and iOS. Yes. The package is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and offers low install friction. It is well-suited for any Python application needing cross-platform desktop notifications. The main consideration is platform-specific setup: macOS requires a signed Python executable, and event loop integration may require additional configuration for GUI apps. ## Install pip install desktop-notifier uv add desktop-notifier poetry add desktop-notifier ## Installing desktop-notifier Before you install: Low install friction with a pure-Python wheel. Maintenance is active with a recent commit on 2026-06-24. The package carries platform-specific runtime dependencies (dbus-fast on Linux, rubicon-objc on macOS, WinRT bindings on Windows) that are resolved automatically but may require system libraries on some platforms. License in practice: MIT license permits commercial and private use with minimal restrictions, making it suitable for most projects. Quickstart: pip install desktop-notifier import asyncio from desktop_notifier import DesktopNotifier notifier = DesktopNotifier() async def main(): await notifier.send(title="Hello", message="Test notification") asyncio.run(main()) Requires Python 3.9 or later. On macOS 10.14+, the Python executable must be signed for notifications to work. Event loop integration may require additional setup on macOS (rubicon-objc CFRunLoop) or Gnome (gbulb). Verify before relying: - Whether platform-specific system libraries (e.g., D-Bus on Linux) are automatically available or require manual installation. - Behavior and compatibility with sandboxed or containerized Python environments. - Whether unsupported notification features silently fail consistently across all platforms. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 114.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags desktop notifications python, cross-platform notification library, system tray notifications, notification center integration, async desktop alerts, notification callbacks, platform-agnostic notifications, async-first, cross-platform, desktop-integration [View on SkillFed](https://skillfed.io/packages/desktop-notifier) · [View on PyPI](https://pypi.org/project/desktop-notifier/)