For terminal notification extensions, the first results are dunst-project/dunst (Dunst is a highly configurable notification daemon that integrates with the command line via DBus to display system alerts, though it is specifically designed for Linux desktop environments rather than being cross-platform), binwiederhier/ntfy (ntfy is a self-hosted notification server that allows you to trigger desktop and mobile alerts via simple HTTP requests from the command line, effectively serving as a robust notification utility for scripts and system events) and julienxx/terminal-notifier (This utility provides a direct command-line interface for triggering native macOS desktop notifications with support for custom formatting and interaction handlers, though it is limited to the macOS platform rather than being cross-platform). caronc/apprise and phuhl/linux_notification_center round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Find the best terminal notification tools. We ranked top open-source options by activity and features to help you compare and pick the right one.
Dunst is a lightweight notification daemon for Linux desktop environments that receives and displays system alerts via the DBus protocol. It functions as a configurable alert service and notification manager, rendering pop-up messages for X11 and Wayland. The project distinguishes itself through a pattern-based rule engine that allows for dynamic alert filtering and conditional modifications of visual styles or behavioral settings based on the sending application or category. It also supports notification workflow automation by triggering external scripts and system commands when specific not
Dunst is a highly configurable notification daemon that integrates with the command line via DBus to display system alerts, though it is specifically designed for Linux desktop environments rather than being cross-platform.
ntfy is a self-hosted messaging infrastructure that provides a lightweight platform for sending and receiving real-time notifications. It functions as a topic-based pub-sub server, allowing users to publish and subscribe to message channels using standard HTTP requests. By bridging server-side events with native mobile and desktop clients, it enables the delivery of alerts across various environments through a unified communication layer. The project distinguishes itself by offering a complete, private notification ecosystem that includes persistent message caching and robust access control.
ntfy is a self-hosted notification server that allows you to trigger desktop and mobile alerts via simple HTTP requests from the command line, effectively serving as a robust notification utility for scripts and system events.
terminal-notifier is a command line utility and system alert wrapper for macOS. It serves as a shell-based bridge that enables the triggering of native desktop notifications through the macOS Notification Center. The tool allows for the customization of notification titles, subtitles, and message bodies, and supports the use of custom application icons and system sounds. It includes a system for organizing alerts into groups and configuring specific actions, such as opening URLs or executing shell commands, when a user interacts with a notification. The utility supports receiving notificatio
This utility provides a direct command-line interface for triggering native macOS desktop notifications with support for custom formatting and interaction handlers, though it is limited to the macOS platform rather than being cross-platform.
Apprise is a notification library and command-line utility that provides a unified interface for sending alerts to a wide range of messaging, email, and push services. It abstracts the complexities of diverse third-party communication APIs, allowing users to dispatch notifications through a single, standardized method. The project utilizes a connection-string-based routing system to map notification requests to specific service drivers. It features a modular plugin architecture that supports the integration of new messaging platforms and custom notification hooks. Users can organize service e
Apprise is a versatile command-line utility that enables you to trigger notifications across a vast array of services via a unified interface, making it highly effective for scriptable terminal alerts.
This project is a Linux notification daemon that functions as a centralized server for managing, displaying, and archiving system alerts. It operates as a messaging bus service that intercepts notification data to provide an interactive interface, allowing users to review past alerts through a persistent history log. The system distinguishes itself through its high degree of customizability and automation capabilities. It utilizes a CSS-driven layout engine to define the visual appearance of notifications, enabling users to tailor themes to match their desktop environment. Furthermore, it sup
This tool provides a notification daemon and center for Linux that integrates with system D-Bus notifications, allowing you to manage and display alerts triggered from the command line.
Plugin for Easy Cross Platform notifications
This library provides a cross-platform API for triggering desktop notifications from C# applications, making it a suitable tool for integrating system alerts into your command-line scripts and workflows.
Supervisor is a process control system for Unix environments that ensures background processes remain running by automatically restarting them if they crash or exit. It functions as a daemon manager that provides a centralized way to start, stop, and monitor the lifecycle of long-running background tasks. The system utilizes a client-server architecture to control multiple processes through a command line interface. This allows for the orchestration of system services and background daemon control without requiring manual shell intervention. The tool covers application process supervision an
This is a process control and daemon management system for monitoring background services, rather than a utility designed to trigger desktop notifications from the terminal.
SketchyBar is a shell-scriptable system user interface and status bar replacement for macOS. It replaces the native menu bar with a customizable overlay that uses scriptable widgets and dynamic visual blocks to display real-time data. The tool is distinguished by its use of external shell scripts to update visual elements and state. It supports a declarative configuration system that allows for the creation of multi-instance bars and the execution of batched commands to minimize flickering during startup. The system provides capabilities for dynamic system monitoring through graphs and visua
This is a highly customizable status bar and UI framework for macOS rather than a utility designed for triggering system-level desktop notifications from the command line.
Colorama is a Python terminal styling library and cross-platform console utility that translates ANSI escape sequences into native system calls. It acts as a terminal output stream wrapper, intercepting and processing control codes to ensure consistent text formatting and styling across different operating systems. The library standardizes terminal output by mapping abstract escape sequences to specific operating system APIs, enabling reliable coloring and cursor positioning in environments that lack native ANSI support. It utilizes runtime platform dispatching to apply the appropriate logic
This is a terminal styling and text formatting library for developers, not a utility for triggering system-level desktop notifications.
Textual is a Python TUI framework and asynchronous UI library used to build interactive text user interfaces. It provides a component-based architecture for creating cross-platform applications that run in both terminal and web browser environments. The framework distinguishes itself by utilizing a CSS-based layout engine to apply visual styles to widgets and a command palette interface for discovering and executing application functions. It also supports hosting terminal-based interfaces on the web to enable remote access via a standard browser. The toolkit covers a broad range of capabilit
Textual is a framework for building interactive terminal user interfaces rather than a utility for triggering system-level desktop notifications from the command line.
Powerline is a statusline and prompt generation framework designed to provide consistent visual information across terminal shells, text editors, and multiplexers. It functions as a configuration-driven customization engine that allows users to define themes, color schemes, and dynamic segment layouts to maintain a cohesive interface across diverse command-line environments. The system utilizes a persistent background daemon to manage state and rendering logic, which offloads processing tasks to minimize resource consumption and ensure high responsiveness across multiple active application in
Powerline is a statusline and prompt customization framework for terminal interfaces, but it does not provide the functionality to trigger desktop system notifications from the command line.
spotifyd is a headless Spotify player and client daemon that operates as a lightweight background process without a graphical user interface. It functions as a Spotify Connect receiver, allowing a device to register as a controllable playback device for remote management via official client applications. The project implements remote playback protocols and API integrations to enable audio streaming and remote control. It utilizes a cross-platform audio backend and system-level sound driver integration to output audio across different operating systems, with specific support for Linux audio in
This is a headless audio streaming client and Spotify Connect receiver, not a utility for triggering system notifications from the command line.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| dunst-project/dunst | 5.5K | C | NOASSERTION | |
| binwiederhier/ntfy | 30.8K | Go | Apache-2.0 | |
| 7.2K |
| Objective-C |
| NOASSERTION |
| caronc/apprise | 15.9K | Python | bsd-2-clause |
| phuhl/linux_notification_center | 1K | Haskell | BSD-3-Clause |
| aritchie/notifications | 102 | C# | MIT |
| supervisor/supervisor | 9.1K | Python | NOASSERTION |
| felixkratz/sketchybar | 11.9K | C | GPL-3.0 |
| tartley/colorama | 3.8K | Python | BSD-3-Clause |
| willmcgugan/textual | 36.3K | Python | MIT |