Skip to content
aiarabicdev

Search

Search every tool...

Self hosted apps
Free tierApache-2.0 and GPL-2.0GoSelf hostable

ntfy

Send push notifications to your phone with a simple HTTP request

Alternative toPushover

ntfy is a publish and subscribe notification service: a script sends a message to a topic with curl, and every phone or browser subscribed to that topic gets a push notification. It is dual licensed under Apache-2.0 and GPL-2.0, with a public server and a paid plan alongside the self hosted option.

Best for when

  • you want phone alerts from scripts, cron jobs and monitoring tools
  • you prefer plain HTTP over a chat bot integration
  • you want a notification service you can host yourself

Watch out for

  • topics are open unless you configure access control
  • iOS notifications from a self hosted server rely on the public relay by default
  • your phone must reach the server, which means a VPN or a public endpoint

Notifications from anything that can make a request

Backups finishing, a disk filling up, a long build completing: anything that can make an HTTP request can tell you. You publish with something as short as a curl POST to your server and a topic name, and the Android, iOS or web app shows it as a notification, with optional priority, tags, attachments and action buttons.

Many self hosted tools, including monitoring and media apps, support ntfy as an alert target out of the box. It suits anyone who wants alerts on their phone without depending on a chat app's bot API or a third party push service.

What running it involves

The server is a single Go binary with very low resource use, and it can keep a message cache and users in small SQLite files. Back those up if you configure access control.

By default, topics are open: anyone who knows a topic name can read and post to it. Configure users and access control on your server, or treat topic names like passwords. iOS push for a self hosted server is relayed through the public ntfy.sh service unless you set it up otherwise, and the server must be reachable from your phone, through a VPN or a public address.

Last checked: .md