What does HackerNews think of ntfy?
Send push notifications to your phone or desktop using PUT/POST
ntfy is a a tool that lets you send push notifications to your phone from any script or server using a simple HTTP PUT/POST requests. It's 100% open source and self-hostable, and has an Android/iOS app and a web app.
You can use ntfy like this (more in the docs: https://ntfy.sh/docs/publish/). This will send a notification to your phone:
curl -d "Backup on $(hostname) complete" ntfy.sh/mytopic
I host free and open version on ntfy.sh, but you can host your own of course.New stuff
- Phone call notifications: https://ntfy.sh/docs/publish/#phone-calls, here's an example call: https://docs.ntfy.sh/static/audio/ntfy-phone-call.mp3
- Prometheus metrics: https://docs.ntfy.sh/config/#monitoring, with Grafana dashboard template
- Access tokens: https://docs.ntfy.sh/config/#access-tokens for logged in users
- Brand new website: https://ntfy.sh with live notification counter
- Official support in healthchecks.io, Uptime Kuma, Radarr, Sonarr, Shoutrrr, Gatus, and many more (see https://docs.ntfy.sh/integrations/)
- User tiers: https://docs.ntfy.sh/config/#tiers with different rate limits per tier
- ...
If you like video tutorials, here's YouTuber Kris [explaining ntfy](https://www.youtube.com/watch?v=u9EcWrsjE20).
Other links:
- ntfy website: https://ntfy.sh/
- ntfy web app: https://ntfy.sh/app
- GitHub (server): https://github.com/binwiederhier/ntfy
- GitHub (Android): https://github.com/binwiederhier/ntfy-android
- Google Play: https://play.google.com/store/apps/details?id=io.heckel.ntfy
- F-Droid: https://f-droid.org/en/packages/io.heckel.ntfy/
- Discord: https://discord.com/invite/cT7ECsZj9w
- Matrix: https://matrix.to/#/#ntfy:matrix.org
Public topics:
- https://ntfy.sh/stats (daily stats scraped from nginx logs)
- https://ntfy.sh/announcements (release announcements)
Disclaimer: I am the maintainer of ntfy.
ntfy is also a distributor for UnifiedPush, so you're not entirely off topic here. Hehe.
Disclaimer: I am the maintainer of ntfy.
Location: Connecticut, US
Remote: Yes
Willing to relocate: No
Technologies: Go (preferred), PHP, JavaScript (w/ React), Scala, Kotlin, Swift, Java, Python, Bash, HTML, CSS, REST, MySQL, Consul, Elasticsearch, HAproxy, nginx, Cryptography, OpenStack, Ceph, KVM, vSphere, Hyper-V, AWS, Azure, Docker, Redis, Cassandra, gRPC, Protobuf, Linux (storage, boot process, image based upgrades, ..), iSCSI, File systems (ZFS, NTFS), Salt, Ansible
Résumé/CV: https://heckel.io/resume.pdf
Email: [email protected]
I am an experienced software engineer, team/project lead and software architect. I've designed and implemented a variety of highly scalable software systems, across many platforms and languages. My preferred language is Go (Golang), but I am proficient in many others.Outside of work, I dedicate most of my time to my family, but I also enjoy writing open source software. Currently, I am working on a push notification tool called ntfy (3.3k stars, https://github.com/binwiederhier/ntfy).
It's a a simple HTTP-based pub-sub notification service. It allows you to send notifications to your phone or desktop via scripts from any computer, entirely without signup or cost. It's also open source if you want to run your own.
You can use it like this (more in the docs: https://ntfy.sh/docs/):
curl -d "hi from HN" ntfy.sh/mytopic
It's 100% not-for-profit and always-just-for-fun.Motivation is: I always wanted it and it was fun to build. I since learned Kotlin (for the Android client), Swift (for the iOS client), and React (for the web client). It's awesome to learn so many technologies. Fun!
It would have similar semantics to the time utility. Let's call this tool timed.
For instance, prefixing any task with the time utility e.g. "time dd if=/dev/sda of=/dev/sdb" would output the duration of the underlying task.
Similarly, executing "timed dd if=/dev/sda of=/dev/sdb" would send a notification to the user when the task completes containing the return code and any console output.
1: Paired with something like https://github.com/binwiederhier/ntfy. This would allow a user to set up multiple ways to receive the notification, including Telegram/Slack, SMS, push notification, email or simply just turning console outputs into a continuous audio note similar to http://listen.hatnote.com/
(Disclaimer: I wrote it.)
For those who don't know, ntfy is a a tool that lets you send push notifications to your phone from any script or server using a simple HTTP PUT/POST requests. It's 100% open source and self-hostable, and has an Android app and a web app.
You can use it like this (more in the docs):
curl -d "Backup on $(hostname) complete" ntfy.sh/mytopic
I host free and open version on ntfy.sh, but you can host your own of course.Since my last post, I added the following features: Publish messages as JSON, custom user actions via action buttons, ntfy:// deep links, ntfy support in Apprise (thanks to @caronc), translations into 13 languages in the web app and Android app, lots of example usages, e.g. with NodeRED, Gatus, Sonarr, Radarr; a super cool chat-style message bar in the web app, and more.
I am happy to answer any and all questions, and I'd love some feedback or new ideas.
Links:
- ntfy website: https://ntfy.sh/
- ntfy web app: https://ntfy.sh/app
- GitHub (server): https://github.com/binwiederhier/ntfy
- GitHub (Android): https://github.com/binwiederhier/ntfy-android
- Google Play: https://play.google.com/store/apps/details?id=io.heckel.ntfy
- F-Droid: https://f-droid.org/en/packages/io.heckel.ntfy/
- Discord: https://discord.com/invite/cT7ECsZj9w
- Matrix: https://matrix.to/#/#ntfy:matrix.org
Right now there is no CLI, it just works with curl or any other HTTP client, like so:
curl -d "Hey, I can send messages to my phone" ntfy.sh/alerts
And those messages will show up on your phone as notifications.
Screenshot: https://imgur.com/a/zXshsjMHappy to answer any and all questions, and I' d love some feedback.
[1] GitHub (server): https://github.com/binwiederhier/ntfy
[2] GitHub (Android app): https://github.com/binwiederhier/ntfy-android
[3] Google Play: https://play.google.com/store/apps/details?id=io.heckel.ntfy
[4] Website: https://ntfy.sh/
I feel compelled to mention my recent very related project: ntfy.sh -- it's also written in Go, has a web UI, and Android app, and uses SSE to communicate with the browser. It allows you to send notifications to the browser with PUT/POST requests.
Links:
curl -d "Backup failed" ntfy.sh/mytopic
It's open source and has an Android app too. Currently you can self-host the server. The Android app only supports "ntfy.sh" so far due to some Android limitations, but if you guys are interested I can add support for self-hosted servers too.Android app: https://play.google.com/store/apps/details?id=io.heckel.ntfy
Server GitHub: https://github.com/binwiederhier/ntfy
Android app GitHub: https://github.com/binwiederhier/ntfy-android
$ curl -d "Backup failed" ntfy.sh/mytopic
I also made an Android app for it which let's you receive messages on subscribed topics as notifications. It was a ton of fun building. I can't believe how much I liked learning Kotlin. The app is also open source and is pending review in the Play Store. If anyone would like to be a tester shoot me a message [1]
[0] https://ntfy.sh and https://github.com/binwiederhier/ntfy