Ntfy – open-source Push to Mobile

(ntfy.sh)

99 points | by Fake4d 1 day ago

15 comments

  • binwiederhier 17 hours ago
    I'm the maintainer of ntfy. Happy to answer questions. Sorry that I'm late to the party :-)
    • skycaptain1 17 hours ago
      Thanks for building something so sicc.
    • noman-land 11 hours ago
      Thank you for ntfy. I self host it and love it.
  • lone-cloud 22 hours ago
    I'm a privacy focused self hoster and ntfy was not good enough for me so I created Prism with an optional Android app: https://git.lonecloud.dev/lone-cloud/prism

    The difference: Your phone doesn't get notifications from your notification service directly, but from Mozilla which helps to hide your digital fingerprint of you using a separate notification provider like ntfy. Prism also allows Telegram or Signal to act as a notification distributor. In addition, I use Proton Mail which doesn't really allow custom notification services. Prism has a custom integration to work around that so your proton mail notifications don't have to touch google services.

    • crtasm 20 hours ago
      Interesting, how is it able to send via Mozilla? I did a quick search in the repo and the term isn't found.
      • lone-cloud 19 hours ago
        The webpush endpoint registration is initiated from the client. The Android app can act as a client and it's the one that registers Mozilla's autopush service.
    • grapemane 20 hours ago
      In what ways is your digital fingerprint being monitored where your notification providers are being captured?
      • lone-cloud 19 hours ago
        I meant that at the network level, should something be monitoring, your client would be making requests to a unique (ntfy) address that virtually nobody else ever uses. Requests to Mozilla are more crowd blended as it's quite popular already.
        • LeBit 34 minutes ago
          Aren’t the requests https?

          Or you mean you are trying to hide from a network where you are mitm attacked?

  • kayson 22 hours ago
    I've been using Gotify [1] for a very long time and have been quite happy with it. Basically no impact on battery life. For devs - there are mature libraries like shoutrr [2] and apprise [3] that let you support multiple notification systems with no extra work.

    1. https://gotify.net/

    2. https://shoutrrr.nickfedor.com/v0.17.0/

    3. https://github.com/caronc/apprise

    • rahimnathwani 22 hours ago
      Right, but if you use ntfy.sh you can get proper mobile push notifications (instead of keeping the app running and using long polling or websockets).

      If you use the public version of ntfy.sh then you don't need to do anything to set this up. If you self-host, you need your own Firebase Cloud Messaging (FCM) account and (for iOS) your own Apple Developer account so you can use APN.

      • crtasm 19 hours ago
        Also the docs point out >Using Firebase is optional and only works if you modify and build your own Android .apk. For a self-hosted instance, it's easier to just not bother with FCM.

        https://docs.ntfy.sh/config/#firebase-fcm

      • kayson 19 hours ago
        Who cares? Battery consumption of Gotify is negligible (it uses websockets). Same with CPU/RAM. What's the benefit of giving Google your notifications?
      • subscribed 19 hours ago
        Publicly hosted version is nearly useless if you'd like to use it to send notifications from your tiny workers/scripts/processes in the big datacentres - I have a minuscule worker in CF that needs to send one notification once every few days, and I *ALWAYS* get a 429. Always.

        So this is good maybe if you're using it to sent from your laptop to your phone.

      • oulipo 21 hours ago
        Personally I use FCM (Firebase push notifications) with a Capacitor plugin for push notifications, it works decently
        • rahimnathwani 21 hours ago
          I didn't know what you meant by Capacitor, but I now understand it's a modern replacement for Apache Cordova: https://capacitorjs.com/
          • oulipo 17 hours ago
            Yes exactly, it's an easy way to build a web-based app and run it on iOS and Android, accessing the native API through a javascript bridge. There's also NativeScript in that space
  • KetoManx64 22 hours ago
    Love this service!

    I use it to send commands and URLs between my devices.

    On Linux you can do `ntfy sub` and on android you can have Tasker react when a ntfy notification arrives based on its title and contents. So on just about all my devices I have a background script running that is subscribed to a "DeviceCommands" channel that checks if the Title of new messages contains the device hostname or not. If it does it triggers a script based on the contents of the body.

    E.g.:

    Title: Pixel8

    Message: https://kagi.com

    Will automatically send the URL to my browser.

    Or:

    Title: LivingRoomPC

    Message: Shutdown

    Will shut down the computer.

    • oulipo 21 hours ago
      For people in the iOS / Apple ecosystem, check Hyperduck which is a neat app to do this
  • shellwizard 19 hours ago
    I used them for some time but their Android app used to drain my battery fast, so I moved on onto a pay-once use forever app (pushover), that works great on my phone, and that supports all of the features that I need for push notifications
  • dewey 22 hours ago
    Not Open Source but I’ve been using https://pushover.net/ for this use case since forever. The website still looks the same as on the day I signed up for it probably more than 10 years ago. Never had an issue and using that in all my scripts or cron jobs.
    • Vaslo 22 hours ago
      I had all sorts of nfty notification to ios issues despite lots of trial and error and a bunch of AI tokens. I also moved to pushover.
      • subscribed 19 hours ago
        I can't use it at all except for inconsequential notifications from my laptop (residential IP) or my phone (mobile IP).
    • oulipo 21 hours ago
      What's the advantage over, say, having a Telegram bot push you messages instead of notifications?
      • mbirth 21 hours ago
        Notifications can carry metadata like specific alert sounds or priorities. High priorities will even break through silence modes of your phone.

        And you get a nice client with icons for each notification source, can filter by them, etc.

      • dewey 21 hours ago
        The advantage is that I don’t have to use Telegram and Pushover can just be triggered by curl in any scripts I use.
        • loremm 12 hours ago
          Not nitpicking but I have curl send telegram, it's not bad but I agree pushover looks nice

          I have it so it can send email, telegram, or twilio call depending on urgency

  • ozarkerD 23 hours ago
    Been running ntfy in my homelab for several years. Always works great!
    • sixothree 22 hours ago
      Incredibly useful to give any app the ability to send you a notification with a single line of code or shell.

      Only one minor caveat for self-hosted iOS users - content of the messages come from your server, but the trigger still comes from ntfy.sh server.

      • lxgr 22 hours ago
        You can "install" the PWA on iOS by adding it to your home screen, then your ntfy instance can use APNs directly (via Web Push)!
        • sixothree 14 hours ago
          Very nice. Thank you. I am not super concerned but I know people here tend to be.
  • tomodachi94 17 hours ago
    Love ntfy. I've used it for a lot of things, but probably the most esoteric would be sending a notification from Minecraft via ComputerCraft 1.58 when my BuildCraft Quarry finishes: https://pastebin.com/n2PRwW0E
  • jasonvorhe 23 hours ago
    Such a great, simple and reliable service. Using it for all sorts of things: nostr push notifications, link sharing between devices, grafana alert notifications.
  • wrxd 8 hours ago
    I used it for a while. The iOS client had issue showing images (I can’t remember the details, it’s probably fixed by now) and the PWA wasn’t too reliable. I had to frequently login again to get it back in a working state

    I ended up switching to pushover and had no issue since

  • tim-projects 11 hours ago
    I wrote a mini bridge for Linux desktop notifications (via notify-send) for anyone that's interested:

    https://github.com/tim-projects/ntfy-notify-send-bridge

  • Superbowl5889 23 hours ago
    I wonder whats the difference between permisions do giant apps like whatsapp, instagram have for notification service.

    cause they seem like perfectly integrated themselves into this, while ntfy has to pose itself as battery consuming application

    I'm planning to using ntfy for notifications like bitwarden vault backups, if apps are updated.

    • binwiederhier 2 hours ago
      If you use ntfy.sh and don't use instant delivery, ntfy uses Google's FCM for delivery, which is what everyone else does. It doesn't require a foreground service and has no battery impact.

      ntfy offers you additional options with instant delivery or the selfhostable server. That requires a server connection and does impact battery a little. On my phone it doesn't show up in the list it's so low, but others have reported more consumption

    • NetMageSCW 23 hours ago
      Probably not permissions so much as proper implementation of push messaging for mobile. Apple created a push message infrastructure and Google followed that allows their messaging infrastructure already running on the phone to multiplex messages for multiple apps without needing additional power for listening.

      I use Pushover for email push notifications- it doesn’t have a subscription and using the proper APIs.

    • robgibbons 17 hours ago
      FCM (Firebase Cloud Messaging), and Apple's own APN (Apple Push Notifications) work as a single OS level service, and they are multiplexed so that many different apps can route through them with a single connection, even waking your phone/watch from sleep. There are open/de-Googled alternatives like UnifiedPush, but they're not integrated at the OS layer (they run as a background worker thread), and can't match the battery efficiency or sleep-wake capabilities of those built into the OS/low-level networking layer.
    • lxgr 22 hours ago
      What do you mean by "battery consuming application"? At least the PWA of ntfy can use Web Push, which uses your browser's existing push notification service and should not consume any additional battery.
    • edoceo 22 hours ago
      I've been using ntfy for ages. Doesn't chew my battery too much. Chrome, mail and mattermost are my top. Ntfy gets less than 30 notifications per day.
  • heatmiser 23 hours ago
    nearly every MVP of mine adds Ntfy. Its too easy to not add.
  • weinzierl 22 hours ago
    There used to be pushed.co which was free and pretty good but it seems to have disappeared completely. Does anyone know what happened to them?
  • webbrain 13 hours ago
    interesting