Skip to content

A small deno deploy / self hosted solution to send web push notifications with webhooks

License

Notifications You must be signed in to change notification settings

alisenola/notify

Repository files navigation

Introducing Notify: Your Awesome Offline Push Message Sender! 📲

Looking for a super-easy way to send push messages to your devices, even when you're offline? Meet Notify - the open-source project that's got your back! With Notify, you can send push messages via a webhook to any device that supports web push. Whether you're using Docker, bare metal, or Deno Deploy, Notify's got you covered!

Get Notified Anywhere, Anytime! 📲

And that's not all! Notify comes with a cool offline installable PWA, ensuring you never miss any important notifications - even when you're on the go!

Check Out the DEMO 🚀

Want to see Notify in action? No problem! We've set up a live demo instance on deno deploy. Try it out now! Just use this command to send a notification to all your devices:

curl -X POST -H "Content-Type: application/json" -d '{"title":"Hello", "message":"World"}' https://notify-demo.deno.dev/api/notify

Customize Your Notifications! ✨

You're in control! Personalize your notifications with optional features like adding an icon:

curl -X POST -H "Content-Type: application/json" -d '{"title":"Hello", "message":"World", "icon": "https://via.placeholder.com/150", "tags": ["test", "server"] }' https://notify-demo.deno.dev/api/notify

Easy Installation - No Fuss! 🛠️

Don't worry about complicated setups. The installation documentation is right here to help you get started with Notify in no time! 📚

👉 Installation Documentation 👉 Api Documentation

Features 🎉

  • Send push messages to any device that supports web push
  • Easy installation with Docker, bare metal, or Deno Deploy
  • Offline installable PWA
  • Customize your notifications with optional features like adding an icon
  • Open-source and free to use
  • No registration required
  • Easy to use API

Quickstart using Docker 🐳

I know this looks scary on first glance but i swear it makes sense.

  1. Generate your instance vapid key deno run --unstable --import-map https://raw.githubusercontent.com/K0IN/Notify/main/app/backend/deno.json https://raw.githubusercontent.com/K0IN/Notify/main/app/backend/main.ts generate
  2. Start the docker (fill in the vapid key from step 1.) docker run -p 8787:8787 -e VAPID_KEY=<vapidkey> -e SUB=mailto:admin@admin.com -e SENDKEY=mypassword ghcr.io/k0in/notify:latest
  3. Start sending notifications curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer mypassword" -d '{"title":"Hello", "message":"World"}' http://localhost:8787/api/notify or use our cli deno run --allow-net --unstable --import-map https://raw.githubusercontent.com/K0IN/Notify/main/app/backend/deno.json https://raw.githubusercontent.com/K0IN/Notify/main/app/backend/main.ts notify -r http://localhost:8787/api/notify -t test -m world --key mypassword

Need Help? 🤔

Credits to the Amazing Developers! 🙏

Huge shout-out to the talented folks who made this possible! We've built on the fantastic web push code from gauntface and, not to forget, we use the Google Icon Font.

Releases

No releases published

Packages

No packages published