discover · compare · collections · requirements · contribute · feed · watching · stats · help with your tokens
binwiederhier/ntfy · source
Snapshot 0 · 2026-11-04T12:47:26Z · Go · Apache-2.0
Content fingerprint
21bf864495bb1ec5bd7c0bd6f48e95fb9f4f6dcbe2644e94197e53ab8ba4fc08GitHub description at capture
Send push notifications to your phone or desktop using PUT/POST
README at capture
 # ntfy.sh | Send push notifications to your phone or desktop via PUT/POST [](https://github.com/binwiederhier/ntfy/releases/latest) [](https://pkg.go.dev/heckel.io/ntfy/v2) [](https://github.com/binwiederhier/ntfy/actions) [](https://goreportcard.com/report/github.com/binwiederhier/ntfy) [](https://codecov.io/gh/binwiederhier/ntfy) [](https://discord.gg/cT7ECsZj9w) [](https://matrix.to/#/#ntfy:matrix.org) [](https://matrix.to/#/#ntfy-space:matrix.org) [](https://ntfy.statuspage.io/) [](https://gitpod.io/#https://github.com/binwiederhier/ntfy) **ntfy** (pronounced "*notify*") is a simple HTTP-based [pub-sub](https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern) notification service. With ntfy, you can **send notifications to your phone or desktop via scripts** from any computer, **without having to sign up or pay any fees**. If you'd like to run your own instance of the service, you can easily do so since ntfy is open source. You can access the free version of ntfy at **[ntfy.sh](https://ntfy.sh)**. There is also an [open-source Android app](https://github.com/binwiederhier/ntfy-android) available on [Google Play](https://play.google.com/store/apps/details?id=io.heckel.ntfy) or [F-Droid](https://f-droid.org/en/packages/io.heckel.ntfy/), as well as an [open source iOS app](https://github.com/binwiederhier/ntfy-ios) available on the [App Store](https://apps.apple.com/us/app/ntfy/id1625396347). <p> <a href="https://play.google.com/store/apps/details?id=io.heckel.ntfy"><img height="50" src="docs/static/img/badge-googleplay.png"></a> <a href="https://f-droid.org/en/packages/io.heckel.ntfy/"><img width="170" src="docs/static/img/badge-fdroid.svg"></a> <a href="https://apps.apple.com/us/app/ntfy/id1625396347"><img height="50" src="docs/static/img/badge-appstore.png"></a> </p> <p> <img src=".github/images/screenshot-curl.png" height="180"> <img src=".github/images/screenshot-web-detail.png" height="180"> <img src=".github/images/screenshot-phone-main.jpg" height="180"> <img src=".github/images/screenshot-phone-detail.jpg" height="180"> <img src=".github/images/screenshot-phone-notification.jpg" height="180"> </p> ## [ntfy Pro](https://ntfy.sh/app) 💸 🎉 I now offer paid plans for [ntfy.sh](https://ntfy.sh/) if you don't want to self-host, or you want to support the development of ntfy (→ [Purchase via web app](https://ntfy.sh/app)). You can **buy a plan for as low as $5/month**. You can also donate via [GitHub Sponsors](https://github.com/sponsors/binwiederhier), and [Liberapay](https://liberapay.com/ntfy). I would be very humbled by your sponsorship. ❤️ ## **[Documentation](https://ntfy.sh/docs/)** [Getting started](https://ntfy.sh/docs/) | [Android/iOS](https://ntfy.sh/docs/subscribe/phone/) | [API](https://ntfy.sh/docs/publish/) | [Install / Self-hosting](https://ntfy.sh/docs/install/) | [Building](https://ntfy.sh/docs/develop/) ## Chat/forum There are a few ways to get in touch with me and/or the rest of the community. Feel free to use any of these methods. Whatever works best for you: * [Discord server](https://discord.gg/cT7ECsZj9w) - direct chat with the community * [Matrix room #ntfy](https://matrix.to/#/#ntfy:matrix.org) (+ [Matrix space](https://matrix.to/#/#ntfy-space:matrix.org)) - same chat, bridged from Discord * [GitHub issues](https://github.com/binwiederhier/ntfy/issues) - questions, features, bugs ## Announcements/beta testers For announcements of new releases and cutting-edge beta versions, please subscribe to the [ntfy.sh/announcements](https://ntfy.sh/announcements) topic. If you'd like to test the iOS app, join [TestFlight](https://testflight.apple.com/join/P1fFnAm9). For Android betas, join Discord/Matrix (I'll eventually make a testing channel in Google Play). ## Sponsors If you'd like to support the ntfy maintainers, please consider donating to [GitHub Sponsors](https://github.com/sponsors/binwiederhier) or and [Liberapay](https://liberapay.com/ntfy). We would be humbled if you helped carry the server and developer account costs. Even small donations are very much appreciated. A big fat **Thank You** to the individuals who have sponsored ntfy in the past, or are still sponsoring ntfy: <a href="https://github.com/neutralinsomniac"><img src="https://github.com/neutralinsomniac.png" width="40px" /></a> <a href="https://github.com/aspyct"><img src="https://github.com/aspyct.png" width="40px" /></a> <a href="https://github.com/nickexyz"><img src="https://github.com/nickexyz.png" width="40px" /></a> <a href="https://github.com/qcasey"><img src="https://github.com/qcasey.png" width="40px" /></a> <a href="https://github.com/mckay115"><img src="https://github.com/mckay115.png" width="40px" /></a> <a href="https://github.com/Salamafet"><img src="https://github.com/Salamafet.png" width="40px" /></a> <a href="https://github.com/codinghipster"><img src="https://github.com/codinghipster.png" width="40px" /></a> <a href="https://github.com/HinFort"><img src="https://github.com/HinFort.png" width="40px" /></a> <a href="https://github.com/Lexevolution"><img src="https://github.com/Lexevolution.png" width="40px" /></a> <a href="https://github.com/johnnyip"><img src="https://github.com/johnnyip.png" width="40px" /></a> <a href="https://github.com/JonDerThan"><img src="https://github.com/JonDerThan.png" width="40px" /></a> <a href="https://github.com/12nick12"><img src="https://github.com/12nick12.png" width="40px" /></a> <a href="https://github.com/eanplatter"><img src="https://github.com/eanplatter.png" width="40px" /></a> <a href="https://github.com/fnoelscher"><img src="https://github.com/fnoelscher.png" width="40px" /></a> <a href="https://github.com/bnorick"><img src="https://github.com/bnorick.png" width="40px" /></a> <a href="https://github.com/snh"><img src="https://github.com/snh.png" width="40px" /></a> <a href="https://github.com/hen-x"><img src="https://github.com/hen-x.png" width="40px" /></a> <a href="https://github.com/JamieGoodson"><img src="https://github.com/JamieGoodson.png" width="40px" /></a> <a href="https://github.com/cremesk"><img src="https://github.com/cremesk.png" width="40px" /></a> <a href="https://github.com/dangowans"><img src="https://github.com/dangowans.png" width="40px" /></a> <a href="https://github.com/mnault"><img src="https://github.com/mnault.png" width="40px" /></a> <a href="https://github.com/nwithan8"><img src="https://github.com/nwithan8.png" width="40px" /></a> <a href="https://github.com/peterleiser"><img src="https://github.com/peterleiser.png" width="40px" /></a> <a href="https://github.com/portothree"><img src="https://github.com/portothree.png" width="40px" /></a> <a href="https://github.com/finngreig"><img src="https://github.com/finngreig.png" width="40px" /></a> <a href="https://github.com/skrollme"><img src="https://github.com/skrollme.png" width="40px" /></a> <a href="https://github.com/gergepalfi"><img src="https://github.com/gergepalfi.png" width="40px" /></a> <a href="https://github.com/tonyakwei"><img src="https://github.com/tonyakwei.png" width="40px" /></a> <a href="https://github.com/crosbyh"><img src="https://github.com/crosbyh.png" width="40px" /></a> <a href="https://github.com/mdlnr"><img src="https://github.com/mdlnr.png" width="40px" /></a> <a href="https://github.com/p-samuel"><img src="https://github.com/p-samuel.png" width="40px" /></a> <a href="https://github.com/zugaldia"><img src="https://github.com/zugaldia.png" width="40px" /></a> <a href="https://github.com/NathanSweet"><img src="https://github.com/NathanSweet.png" width="40px" /></a> <a href="https://github.com/msdeibel"><img src="https://github.com/msdeibel.png" width="40px" /></a> <a href="https://github.com/ksurl"><img src="https://github.com/ksurl.png" width="40px" /></a> <a href="https://github.com/CodingTimeDEV"><img src="https://github.com/CodingTimeDEV.png" width="40px" /></a> <a href="https://github.com/Terrormixer3000"><img src="https://github.com/Terrormixer3000.png" width="40px" /></a> <a href="https://github.com/voroskoi"><img src="https://github.com/voroskoi.png" width="40px" /></a> <a href="https://github.com/Nickwasused"><img src="https://github.com/Nickwasused.png" width="40px" /></a> <a href="https://github.com/bahur142"><img src="https://github.com/bahur142.png" width="40px" /></a> <a href="https://github.com/vinhdizzo"><img src="https://github.com/vinhdizzo.png" width="40px" /></a> <a href="https://github.com/Ge0rg3"><img src="https://github.com/Ge0rg3.png" width="40px" /></a> <a href="https://github.com/biopsin"><img src="https://github.com/biopsin.png" width="40px" /></a> <a href="https://github.com/thebino"><img src="https://github.com/thebino.png" width="40px" /></a> <a href="https://github.com/sky4055"><img src="https://github.com/sky4055.png" width="40px" /></a> <a href="https://github.com/julianlam"><img src="https://github.com/julianlam.png" width="40px" /></a> <a href="https://github.com/andreapx"><img src="https://github.com/andreapx.png" width="40px" /></a> <a href="https://github.com/billycao"><img src="https://github.com/billycao.png" width="40px" /></a> <a href="https://github.com/zoic21"><img src="https://github.com/zoic21.png" width="40px" /></a> <a href="https://github.com/IanKulin"><img src="https://github.com/IanKulin.png" width="40px" /></a> <a href="https://github.com/Joachim256"><img src="https://github.com/Joachim256.png" width="40px" /></a> <a href="https://github.com/overtone1000"><img src="https://github.com/overtone1000.png" width="40px" /></a> <a href="https://github.com/oakd"><img src="https://github.com/oakd.png" width="40px" /></a> <a href="https://github.com/KucharczykL"><img src="https://github.com/KucharczykL.png" width="40px" /></a> <a href="https://github.com/hansbickhofe"><img src="https://github.com/hansbickhofe.png" width="40px" /></a> <a href="https://github.com/caseodilla"><img src="https://github.com/caseodilla.png" width="40px" /></a> <a href="https://github.com/0xAF"><img src="https://github.com/0xAF.png" width="40px" /></a> <a href="https://github.com/soonoo"><img src="https://github.com/soonoo.png" width="40px" /></a> <a href="https://github.com/nichu42"><img src="https://github.com/nichu42.png" width="40px" /></a> <a href="https://github.com/samliebow"><img src="https://github.com/samliebow.png" width="40px" /></a> <a href="https://github.com/johman10"><img src="https://github.com/johman10.png" width="40px" /></a> <a href="https://github.com/R-Gld"><img src="https://github.com/R-Gld.png" width="40px" /></a> <a href="https://github.com/FingerlessGlov3s"><img src="https://github.com/FingerlessGlov3s.png" width="40px" /></a> <a href="https://github.com/Twisterado"><img src="https://github.com/Twisterado.png" width="40px" /></a> <a href="https://github.com/ScrumpyJack"><img src="https://github.com/ScrumpyJack.png" width="40px" /></a> <a href="https://github.com/andrejarrell"><img src="https://github.com/andrejarrell.png" width="40px" /></a> <a href="https://github.com/oaustegard"><img src="https://github.com/oaustegard.png" width="40px" /></a> <a href="https://github.com/CreativeWarlock"><img src="https://github.com/CreativeWarlock.png" width="40px" /></a> <a href="https://github.com/darkdragon-001"><img src="https://github.com/darkdragon-001.png" width="40px" /></a> <a href="https://github.com/jonathan-kosgei"><img src="https://github.com/jonathan-kosgei.png" width="40px" /></a> <a href="https://github.com/KevinWang15"><img src="https://github.com/KevinWang15.png" width="40px" /></a> <a href="https://github.com/darkmattercoder"><img src="https://github.com/darkmattercoder.png" width="40px" /></a> <a href="https://github.com/bmcgonag"><img src="https://github.com/bmcgonag.png" width="40px" /></a> <a href="https://github.com/skorokithakis"><img src="https://github.com/skorokithakis.png" width="40px" /></a> <a href="https://github.com/eenturk"><img src="https://github.com/eenturk.png" width="40px" /></a> <a href="https://github.com/spirossi"><img src="https://github.com/spirossi.png" width="40px" /></a> <a href="https://github.com/teomarcdhio"><img src="https://github.com/teomarcdhio.png" width="40px" /></a> <a href="https://github.com/MarcMichalsky"><img src="https://github.com/MarcMichalsky.png" width="40px" /></a> <a href="https://github.com/LuckVintage"><img src="https://github.com/LuckVintage.png" width="40px" /></a> <a href="https://github.com/spartan"><img src="https://github.com/spartan.png" width="40px" /></a> <a href="https://github.com/alexandzors"><img src="https://github.com/alexandzors.png" width="40px" /></a> <a href="https://github.com/dkramer95"><img src="https://github.com/dkramer95.png" width="40px" /></a> <a href="https://github.com/YezGotIt"><img src="https://github.com/YezGotIt.png" width="40px" /></a> <a href="https://github.com/thomasskou"><img src="https://github.com/thomasskou.png" width="40px" /></a> <a href="https://github.com/surfernv"><img src="https://github.com/surfernv.png" width="40px" /></a> <a href="https://github.com/richardleach"><img src="https://github.com/richardleach.png" width="40px" /></a> <a href="https://github.com/bear"><img src="https://github.com/bear.png" width="40px" /></a> <a href="https://github.com/cminter"><img src="https://github.com/cminter.png" width="40px" /></a> <a href="https://github.com/pgwiebes"><img src="https://github.com/pgwiebes.png" width="40px" /></a> <a href="https://github.com/ralhei"><img src="https://github.com/ralhei.png" width="40px" /></a> <a href="https://github.com/TechMDW"><img src="https://github.com/TechMDW.png" width="40px" /></a> <a href="https://github.com/ubipo"><img src="https://github.com/ubipo.png" width="40px" /></a> <a href="https://github.com/tka85"><img src="https://github.com/tka85.png" width="40px" /></a> <a href="https://github.com/beekeeb"><img src="https://github.com/beekeeb.png" width="40px" /></a> <a href="https://github.com/Emiliaaah"><img src="https://github.com/Emiliaaah.png" width="40px" /></a> <a href="https://github.com/zark0s"><img src="https://github.com/zark0s.png" width="40px" /></a> <a href="https://github.com/tomershvueli"><img src="https://github.com/tomershvueli.png" width="40px" /></a> <a href="https://github.com/CataIana"><img src="https://github.com/CataIana.png" width="40px" /></a> <a href="https://github.com/ajay-actuary"><img src="https://github.com/ajay-actuary.png" width="40px" /></a> <a href="https://github.com/mursec"><img src="https://github.com/mursec.png" width="40px" /></a> <a href="https://github.com/FrameXX"><img src="https://github.com/FrameXX.png" width="40px" /></a> <a href="https://github.com/vovayartsev"><img src="https://github.com/vovayartsev.png" width="40px" /></a> <a href="https://github.com/dwain-lab"><img src="https://github.com/dwain-lab.png" width="40px" /></a> <a href="https://github.com/brookmg"><img src="https://github.com/brookmg.png" width="40px" /></a> <a href="https://github.com/siebej"><img src="https://github.com/siebej.png" width="40px" /></a> <a href="https://github.com/rxsantos"><img src="https://github.com/rxsantos.png" width="40px" /></a> <a href="https://github.com/hermannx5"><img src="https://github.com/hermannx5.png" width="40px" /></a> <a href="https://github.com/rwxd"><img src="https://github.com/rwxd.png" width="40px" /></a> <a href="https://github.com/Integral-Tech"><img src="https://github.com/Integral-Tech.png" width="40px" /></a> <a href="https://github.com/TheTomik1"><img src="https://github.com/TheTomik1.png" width="40px" /></a> <a href="https://github.com/dav23r"><img src="https://github.com/dav23r.png" width="40px" /></a> <a href="https://github.com/danbartram"><img src="https://github.com/danbartram.png" width="40px" /></a> <a href="https://github.com/arthurgleckler"><img src="https://github.com/arthurgleckler.png" width="40px" /></a> <a href="https://github.com/tomroth04"><img src="https://github.com/tomroth04.png" width="40px" /></a> <a href="https://github.com/Circenn5130"><img src="https://github.com/Circenn5130.png" width="40px" /></a> <a href="https://github.com/jceloria"><img src="https://github.com/jceloria.png" width="40px" /></a> <a href="https://github.com/afunworm"><img src="https://github.com/afunworm.png" width="40px" /></a> <a href="https://github.com/PTR-inc"><img src="https://github.com/PTR-inc.png" width="40px" /></a> <a href="https://github.com/spudooli"><img src="https://github.com/spudooli.png" width="40px" /></a> <a href="https://github.com/IMarkoMC"><img src="https://github.com/IMarkoMC.png" width="40px" /></a> <a href="https://github.com/rubund"><img src="https://github.com/rubund.png" width="40px" /></a> <a href="https://github.com/Riolku"><img src="https://github.com/Riolku.png" width="40px" /></a> <a href="https://github.com/arnbrhm"><img src="https://github.com/arnbrhm.png" width="40px" /></a> <a href="https://github.com/herzkerl"><img src="https://github.com/herzkerl.png" width="40px" /></a> <a href="https://github.com/0x45796164"><img src="https://github.com/0x45796164.png" width="40px" /></a> <a href="https://github.com/madchr1st"><img src="https://github.com/madchr1st.png" width="40px" /></a> <a href="https://github.com/avalentic"><img src="https://github.com/avalentic.png" width="40px" /></a> <a href="https://github.com/TheCraiggers"><img src="https://github.com/TheCraiggers.png" width="40px" /></a> <a href="https://github.com/sheetd"><img src="https://github.com/sheetd.png" width="40px" /></a> <a href="https://github.com/dlt-green"><img src="https://github.com/dlt-green.png" width="40px" /></a> <a href="https://github.com/suhlig"><img src="https://github.com/suhlig.png" width="40px" /></a> <a href="https://github.com/Proximus888"><img src="https://github.com/Proximus888.png" width="40px" /></a> <a href="https://github.com/wielandp"><img src="https://github.com/wielandp.png" width="40px" /></a> <a href="https://github.com/user8446"><img src="https://github.com/user8446.png" width="40px" /></a> <a href="https://github.com/cdf-eagles"><img src="https://github.com/cdf-eagles.png" width="40px" /></a> <a href="https://github.com/gabeklavans"><img src="https://github.com/gabeklavans.png" width="40px" /></a> <a href="https://github.com/lyellick"><img src="https://github.com/lyellick.png" width="40px" /></a> <a href="https://github.com/lukaszange"><img src="https://github.com/lukaszange.png" width="40px" /></a> <a href="https://github.com/noon92"><img src="https://github.com/noon92.png" width="40px" /></a> <a href="https://github.com/wljohnson05"><img src="https://github.com/wljohnson05.png" width="40px" /></a> <a href="https://github.com/reivilibre"><img src="https://github.com/reivilibre.png" width="40px" /></a> <a href="https://github.com/Coleslaw3557"><img src="https://github.com/Coleslaw3557.png" width="40px" /></a> <a href="https://github.com/alexgaudon"><img src="https://github.com/alexgaudon.png" width="40px" /></a> <a href="https://github.com/jarikmarwede"><img src="https://github.com/jarikmarwede.png" width="40px" /></a> <a href="https://github.com/the-antz"><img src="https://github.com/the-antz.png" width="40px" /></a> <a href="https://github.com/flag0010"><img src="https://github.com/flag0010.png" width="40px" /></a> <a href="https://github.com/chsedotsh"><img src="https://github.com/chsedotsh.png" width="40px" /></a> <a href="https://github.com/nanoandrew4"><img src="https://github.com/nanoandrew4.png" width="40px" /></a> <a href="https://github.com/aashish-joshi"><img src="https://github.com/aashish-joshi.png" width="40px" /></a> <a href="https://github.com/acantril"><img src="https://github.com/acantril.png" width="40px" /></a> <a href="https://github.com/therobbielee"><img src="https://github.com/therobbielee.png" width="40px" /></a> <a href="https://github.com/kdirectorate"><img src="https://github.com/kdirectorate.png" width="40px" /></a> <a href="https://github.com/jestramiana"><img src="https://github.com/jestramiana.png" width="40px" /></a> <a href="https://github.com/chefarbeiter"><img src="https://github.com/chefarbeiter.png" width="40px" /></a> <a href="https://github.com/innateessence"><img src="https://github.com/innateessence.png" width="40px" /></a> <a href="https://github.com/protok"><img src="https://github.com/protok.png" width="40px" /></a> <a href="https://github.com/Gennadiyev"><img src="https://github.com/Gennadiyev.png" width="40px" /></a> <a href="https://github.com/lennart-m"><img src="https://github.com/lennart-m.png" width="40px" /></a> <a href="https://github.com/martin3000"><img src="https://github.com/martin3000.png" width="40px" /></a> <a href="https://github.com/hockdudu"><img src="https://github.com/hockdudu.png" width="40px" /></a> <a href="https://github.com/reedkrantz"><img src="https://github.com/reedkrantz.png" width="40px" /></a> <a href="https://github.com/lsanchohub"><img src="https://github.com/lsanchohub.png" width="40px" /></a> <a href="https://github.com/weikib"><img src="https://github.com/weikib.png" width="40px" /></a> <a href="https://github.com/stoneynutcase"><img src="https://github.com/stoneynutcase.png" width="40px" /></a> <a href="https://github.com/baudneo"><img src="https://github.com/baudneo.png" width="40px" /></a> <a href="https://github.com/blockblue47"><img src="https://github.com/blockblue47.png" width="40px" /></a> <a href="https://github.com/fristyxd"><img src="https://github.com/fristyxd.png" width="40px" /></a> <a href="https://github.com/skijk"><img src="https://github.com/skijk.png" width="40px" /></a> <a href="https://github.com/FluLights"><img src="https://github.com/FluLights.png" width="40px" /></a> <a href="https://github.com/GioMez"><img src="https://github.com/GioMez.png" width="40px" /></a> <a href="https://github.com/merpuya"><img src="https://github.com/merpuya.png" width="40px" /></a> <a href="https://github.com/paralino"><img src="https://github.com/paralino.png" width="40px" /></a> <a href="https://github.com/iamboozer"><img src="https://github.com/iamboozer.png" width="40px" /></a> <a href="https://github.com/xaviierw"><img src="https://github.com/xaviierw.png" width="40px" /></a> <a href="https://github.com/its-tujo"><img src="https://github.com/its-tujo.png" width="40px" /></a> <a href="https://github.com/CR000K"><img src="https://github.com/CR000K.png" width="40px" /></a> <a href="https://github.com/joe-mccarthy"><img src="https://github.com/joe-mccarthy.png" width="40px" /></a> <a href="https://github.com/bub0-bub0"><img src="https://github.com/bub0-bub0.png" width="40px" /></a> <a href="https://github.com/tmat255"><img src="https://github.com/tmat255.png" width="40px" /></a> <a href="https://github.com/aqplemine"><img src="https://github.com/aqplemine.png" width="40px" /></a> <a href="https://github.com/AlbedoSapiens"><img src="https://github.com/AlbedoSapiens.png" width="40px" /></a> <a href="https://github.com/finneon-nvb"><img src="https://github.com/finneon-nvb.png" width="40px" /></a> <a href="https://github.com/AsebWebDev"><img src="https://github.com/AsebWebDev.png" width="40px" /></a> <a href="https://github.com/simpleetech"><img src="https://github.com/simpleetech.png" width="40px" /></a> <a href="https://github.com/Glareascum"><img src="https://github.com/Glareascum.png" width="40px" /></a> <a href="https://github.com/obliviance"><img src="https://github.com/obliviance.png" width="40px" /></a> <a href="https://github.com/hippothomas"><img src="https://github.com/hippothomas.png" width="40px" /></a> <a href="https://github.com/IamLunchbox"><img src="https://github.com/IamLunchbox.png" width="40px" /></a> <a href="https://github.com/BenotoNet"><img src="https://github.com/BenotoNet.png" width="40px" /></a> <a href="https://github.com/Hennbaer"><img src="https://github.com/Hennbaer.png" width="40px" /></a> <a href="https://github.com/tomasodehnal"><img src="https://github.com/tomasodehnal.png" width="40px" /></a> <a href="https://github.com/Kasi07"><img src="https://github.com/Kasi07.png" width="40px" /></a> <a href="https://github.com/kanna5"><img src="https://github.com/kanna5.png" width="40px" /></a> <a href="https://github.com/warpdotdev"><img src="https://github.com/warpdotdev.png" width="40px" /></a> <a href="https://github.com/t3hero"><img src="https://github.com/t3hero.png" width="40px" /></a> <a href="https://github.com/jorgenbs"><img src="https://github.com/jorgenbs.png" width="40px" /></a> <a href="https://github.com/AdmiralNemo"><img src="https://github.com/AdmiralNemo.png" width="40px" /></a> <a href="https://github.com/wcypierre"><img src="https://github.com/wcypierre.png" width="40px" /></a> <a href="https://github.com/timgluz"><img src="https://github.com/timgluz.png" width="40px" /></a> <a href="https://github.com/DavorPadovan"><img src="https://github.com/DavorPadovan.png" width="40px" /></a> <a href="https://github.com/fapeg"><img src="https://github.com/fapeg.png" width="40px" /></a> <a href="https://github.com/shaunhey"><img src="https://github.com/shaunhey.png" width="40px" /></a> <a href="https://github.com/xiongzi"><img src="https://github.com/xiongzi.png" width="40px" /></a> <a href="https://github.com/belthesar"><img src="https://github.com/belthesar.png" width="40px" /></a> <a href="https://github.com/profbbrown"><img src="https://github.com/profbbrown.png" width="40px" /></a> <a href="https://github.com/dodancs"><img src="https://github.com/dodancs.png" width="40px" /></a> <a href="https://github.com/Spakman"><img src="https://github.com/Spakman.png" width="40px" /></a> <a href="https://github.com/rubiojr"><img src="https://github.com/rubiojr.png" width="40px" /></a> <a href="https://github.com/majoragee"><img src="https://github.com/majoragee.png" width="40px" /></a> <a href="https://github.com/defewit"><img src="https://github.com/defewit.png" width="40px" /></a> <a href="https://github.com/scode"><img src="https://github.com/scode.png" width="40px" /></a> <a href="https://github.com/mvgrimes"><img src="https://github.com/mvgrimes.png" width="40px" /></a> <a href="https://github.com/brpaz"><img src="https://github.com/brpaz.png" width="40px" /></a> <a href="https://github.com/gregwinn"><img src="https://github.com/gregwinn.png" width="40px" /></a> <a href="https://github.com/fazalmajid"><img src="https://github.com/fazalmajid.png" width="40px" /></a> <a href="https://github.com/upsuper"><img src="https://github.com/upsuper.png" width="40px" /></a> <a href="https://github.com/schneidr"><img src="https://github.com/schneidr.png" width="40px" /></a> <a href="https://github.com/pm0u"><img src="https://github.com/pm0u.png" width="40px" /></a> <a href="https://github.com/AlexKalopsia"><img src="https://github.com/AlexKalopsia.png" width="40px" /></a> <a href="https://github.com/rpaterson"><img src="https://github.com/rpaterson.png" width="40px" /></a> <a href="https://github.com/nabulator"><img src="https://github.com/nabulator.png" width="40px" /></a> <a href="https://github.com/noenik"><img src="https://github.com/noenik.png" width="40px" /></a> <a href="https://github.com/dasos"><img src="https://github.com/dasos.png" width="40px" /></a> <a href="https://github.com/AntonAttano"><img src="https://github.com/AntonAttano.png" width="40px" /></a> <a href="https://github.com/JohnFritz"><img src="https://github.com/JohnFritz.png" width="40px" /></a> <a href="https://github.com/muety"><img src="https://github.com/muety.png" width="40px" /></a> <a href="https://github.com/mjablon1"><img src="https://github.com/mjablon1.png" width="40px" /></a> <a href="https://github.com/57-Wolve"><img src="https://github.com/57-Wolve.png" width="40px" /></a> <a href="https://github.com/AceofSpades5757"><img src="https://github.com/AceofSpades5757.png" width="40px" /></a> <a href="https://github.com/sdiggly"><img src="https://github.com/sdiggly.png" width="40px" /></a> <a href="https://github.com/berkutta"><img src="https://github.com/berkutta.png" width="40px" /></a> <a href="https://github.com/stevennevins"><img src="https://github.com/stevennevins.png" width="40px" /></a> <a href="https://github.com/rohitshriwas"><img src="https://github.com/rohitshriwas.png" width="40px" /></a> <a href="https://github.com/hostinger"><img src="https://github.com/hostinger.png" width="40px" /></a> <a href="https://github.com/haguenau"><img src="https://github.com/haguenau.png" width="40px" /></a> <a href="https://github.com/manuel-rhdt"><img src="https://github.com/manuel-rhdt.png" width="40px" /></a> <a href="https://github.com/tylercasson"><img src="https://github.com/tylercasson.png" width="40px" /></a> <a href="https://github.com/tagadvance"><img src="https://github.com/tagadvance.png" width="40px" /></a> <a href="https://github.com/Conor0Callaghan"><img src="https://github.com/Conor0Callaghan.png" width="40px" /></a> <a href="https://github.com/gorhack"><img src="https://github.com/gorhack.png" width="40px" /></a> <a href="https://github.com/Raiper34"><img src="https://github.com/Raiper34.png" width="40px" /></a> <a href="https://github.com/shaungarwood"><img src="https://github.com/shaungarwood.png" width="40px" /></a> <a href="https://github.com/alex-ip"><img src="https://github.com/alex-ip.png" width="40px" /></a> <a href="https://github.com/remcoboerma"><img src="https://github.com/remcoboerma.png" width="40px" /></a> <a href="https://github.com/viliev"><img src="https://github.com/viliev.png" width="40px" /></a> <a href="https://github.com/choozm"><img src="https://github.com/choozm.png" width="40px" /></a> <a href="https://github.com/theProf"><img src="https://github.com/theProf.png" width="40px" /></a> <a href="https://github.com/alidtz"><img src="https://github.com/alidtz.png" width="40px" /></a> <a href="https://github.com/degill"><img src="https://github.com/degill.png" width="40px" /></a> ## Contributing I welcome any contributions. Just create a PR or an issue. For larger features/ideas, please reach out on Discord/Matrix first to see if I'd accept them. To contribute code, check out the [build instructions](https://ntfy.sh/docs/develop/) for the server and the Android app. Or, if you'd like to help translate 🇩🇪 🇺🇸 🇧🇬, you can start immediately in [Hosted Weblate](https://hosted.weblate.org/projects/ntfy/). <a href="https://hosted.weblate.org/engage/ntfy/"> <img src="https://hosted.weblate.org/widgets/ntfy/-/multi-blue.svg" alt="Translation status" /> </a> ## Code of Conduct We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation. **We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.** _Please be sure to read the complete [Code of Conduct](CODE_OF_CONDUCT.md)._ ## License Made with ❤️ by [Philipp C. Heckel](https://heckel.io). The project is dual licensed under the [Apache License 2.0](LICENSE) and the [GPLv2 License](LICENSE.GPLv2). Third-party libraries and resources: * [github.com/urfave/cli](https://github.com/urfave/cli) (MIT) is used to drive the CLI * [Mixkit sounds](https://mixkit.co/free-sound-effects/notification/) (Mixkit Free License) are used as notification sounds * [Sounds from notificationsounds.com](https://notificationsounds.com) (Creative Commons Attribution) are used as notification sounds * [Roboto Font](https://fonts.google.com/specimen/Roboto) (Apache 2.0) is used as a font in everything web * [React](https://reactjs.org/) (MIT) is used for the web app * [Material UI components](https://mui.com/) (MIT) are used in the web app * [MUI dashboard template](https://github.com/mui/material-ui/tree/master/docs/data/material/getting-started/templates/dashboard) (MIT) was used as a basis for the web app * [Dexie.js](https://github.com/dexie/Dexie.js) (Apache 2.0) is used for web app persistence in IndexedDB * [GoReleaser](https://goreleaser.com/) (MIT) is used to create releases * [go-smtp](https://github.com/emersion/go-smtp) (MIT) is used to receive e-mails * [stretchr/testify](https://github.com/stretchr/testify) (MIT) is used for unit and integration tests * [github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) (MIT) is used to provide the persistent message cache * [Firebase Admin SDK](https://github.com/firebase/firebase-admin-go) (Apache 2.0) is used to send FCM messages * [github/gemoji](https://github.com/github/gemoji) (MIT) is used for emoji support (specifically the [emoji.json](https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json) file) * Go's [text/template](https://pkg.go.dev/text/template) (BSD-3-Clause) is vendored under [template/gotext/](template/gotext/) with a small patch adding an execution deadline (see [template/gotext/README.md](template/gotext/README.md)) * [Lightbox with vanilla JS](https://yossiabramov.com/blog/vanilla-js-lightbox) as a lightbox on the landing page * [HTTP middleware for gzip compression](https://gist.github.com/CJEnright/bc2d8b8dc0c1389a9feeddb110f822d7) (MIT) is used for serving static files * [Regex for auto-linking](https://github.com/bryanwoods/autolink-js) (MIT) is used to highlight links (the library is not used) * [Statically linking go-sqlite3](https://www.arp242.net/static-go.html) * [Linked tabs in mkdocs](https://facelessuser.github.io/pymdown-extensions/extensions/tabbed/#linked-tabs) * [webpush-go](https://github.com/SherClockHolmes/webpush-go) (MIT) is used to send web push notifications * [Sprig](https://github.com/Masterminds/sprig) (MIT) is used to add template parsing functions