# binwiederhier/ntfy

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/binwiederhier-ntfy).**

30,790 stars · 1,305 forks · Go · Apache-2.0

## Links

- GitHub: https://github.com/binwiederhier/ntfy
- Homepage: https://ntfy.sh
- awesome-repositories: https://awesome-repositories.com/repository/binwiederhier-ntfy.md

## Topics

`curl` `notifications` `ntfy` `ntfysh` `pubsub` `push-notifications` `rest-api`

## Description

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. It supports the UnifiedPush protocol, acting as a gateway to native mobile operating system push services, which allows for decentralized notification delivery without reliance on proprietary cloud providers. Users can interact with the system through a command-line interface, webhooks, or persistent streaming connections like Server-Sent Events and WebSockets.

The platform covers a broad range of operational capabilities, including automated system monitoring, workflow integration, and cross-platform event broadcasting. It supports advanced message features such as content templating, file attachments, interactive buttons, and priority-based delivery. The system is designed for flexible deployment, offering containerized and binary-based installation options that simplify integration into existing infrastructure.

The software is distributed as a single static binary, facilitating straightforward deployment across Linux, macOS, and Windows environments.

## Tags

### Networking & Communication

- [PubSub Messaging Systems](https://awesome-repositories.com/f/networking-communication/pubsub-messaging-systems.md) — Provides real-time communication by allowing clients to publish and subscribe to message topics over standard HTTP protocols.
- [Message Brokers](https://awesome-repositories.com/f/networking-communication/message-brokers.md) — Facilitates asynchronous communication by allowing clients to publish and subscribe to specific message channels over standard HTTP protocols.
- [Server-Sent Events](https://awesome-repositories.com/f/networking-communication/server-sent-events.md) — Maintains long-lived connections between server and client to push live message updates as they occur.
- [Pub-Sub Systems](https://awesome-repositories.com/f/networking-communication/pub-sub-systems.md) — Listens for incoming messages on specific channels to trigger scripts. ([source](https://docs.ntfy.sh/subscribe/cli/))
- [Streaming Protocols](https://awesome-repositories.com/f/networking-communication/streaming-protocols.md) — Receives real-time updates using persistent connections for live delivery. ([source](https://docs.ntfy.sh/subscribe/api/))
- [WebSocket Services](https://awesome-repositories.com/f/networking-communication/websocket-services.md) — Establishes persistent connections to receive live data streams. ([source](https://docs.ntfy.sh/subscribe/api/))
- [Notification Clients](https://awesome-repositories.com/f/networking-communication/notification-clients.md) — Provides native push alerts and message management across mobile, desktop, and command-line environments.
- [Webhook Integrations](https://awesome-repositories.com/f/networking-communication/webhook-integrations.md) — Triggers notifications using simple HTTP requests for system integration. ([source](https://ntfy.sh/docs/publish/))
- [Event Buses](https://awesome-repositories.com/f/networking-communication/event-buses.md) — Connects disparate services and scripts through a shared topic-based messaging architecture.
- [File Transfer Utilities](https://awesome-repositories.com/f/networking-communication/file-transfer-utilities.md) — Supports including files or images in notifications via HTTP. ([source](https://ntfy.sh/docs/publish/))

### Development Tools & Productivity

- [Notification Services](https://awesome-repositories.com/f/development-tools-productivity/notification-services.md) — Provides command-line utilities for sending notifications to specific topics. ([source](https://docs.ntfy.sh/subscribe/cli/))
- [Command Line Interfaces](https://awesome-repositories.com/f/development-tools-productivity/command-line-interfaces.md) — Provides command-line utilities to manage notification topics, subscribe to message streams, and host local notification infrastructure. ([source](https://docs.ntfy.sh/install/))
- [Priority Management](https://awesome-repositories.com/f/development-tools-productivity/priority-management.md) — Assigns urgency levels to control device notification behavior. ([source](https://ntfy.sh/docs/publish/))
- [Task Schedulers](https://awesome-repositories.com/f/development-tools-productivity/task-schedulers.md) — Delays notification transmission to a specific future time. ([source](https://docs.ntfy.sh/publish/))
- [Template Engines](https://awesome-repositories.com/f/development-tools-productivity/template-engines.md) — Converts structured data into human-readable text using flexible formatting. ([source](https://docs.ntfy.sh/publish/))

### DevOps & Infrastructure

- [Messaging Servers](https://awesome-repositories.com/f/devops-infrastructure/messaging-servers.md) — Manages message persistence, user authentication, and real-time delivery for private notification networks.
- [Self-Hosted Infrastructure](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-infrastructure.md) — Provides a private messaging server for managing real-time alerts and message persistence.
- [Container Images](https://awesome-repositories.com/f/devops-infrastructure/container-images.md) — Runs notification services in containerized environments using official images with support for persistent data and custom configurations. ([source](https://ntfy.sh/docs/install/))
- [Rate Limiters](https://awesome-repositories.com/f/devops-infrastructure/rate-limiters.md) — Protects notification infrastructure from abuse by configuring request limits and identifying traffic sources behind proxy servers. ([source](https://docs.ntfy.sh/config/))

### Mobile Development

- [Push & Notifications](https://awesome-repositories.com/f/mobile-development/mobile-capabilities/push-notifications.md) — Standardises mobile notification delivery by acting as a gateway between self-hosted messaging servers and native operating system push services.
- [Native Modules & Bridges](https://awesome-repositories.com/f/mobile-development/native-modules-bridges.md) — Connects messaging services with local system handlers for device actions. ([source](https://docs.ntfy.sh/subscribe/phone/))

### Data & Databases

- [Message Caching Services](https://awesome-repositories.com/f/data-databases/message-caching-services.md) — Stores incoming notifications in a relational database to allow clients to retrieve historical messages after reconnecting.
- [Data Retrieval Services](https://awesome-repositories.com/f/data-databases/data-retrieval-services.md) — Fetches historical notifications using polling or cached history. ([source](https://docs.ntfy.sh/subscribe/api/))
- [Database Abstraction Layers](https://awesome-repositories.com/f/data-databases/database-abstraction-layers.md) — Decouples application logic from storage by supporting interchangeable database drivers for message persistence and user access control.

### Security & Cryptography

- [Access Control](https://awesome-repositories.com/f/security-cryptography/access-control.md) — Secures message endpoints by requiring valid credentials or tokens. ([source](https://docs.ntfy.sh/publish/))
- [Access Control Lists](https://awesome-repositories.com/f/security-cryptography/access-control-lists.md) — Secures notification channels by configuring authentication requirements to prevent unauthorized users from reading or writing messages. ([source](https://docs.ntfy.sh/config/))

### System Administration & Monitoring

- [System Monitoring Tools](https://awesome-repositories.com/f/system-administration-monitoring/system-monitoring-tools.md) — Tracks server health and background task status to trigger immediate alerts on state changes.
- [Task Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/task-monitoring.md) — Monitors background tasks and scheduled scripts by sending status updates upon completion or failure. ([source](https://docs.ntfy.sh/examples/))

### Part of an Awesome List

- [Communication Systems](https://awesome-repositories.com/f/awesome-lists/media/communication-systems.md) — Push notification service for phone and desktop.

### User Interface & Experience

- [Interactive UI Elements](https://awesome-repositories.com/f/user-interface-experience/interactive-ui-elements.md) — Allows attaching clickable buttons to trigger actions from alerts. ([source](https://docs.ntfy.sh/publish/))
