MCPcopy
hub / github.com/binwiederhier/ntfy

github.com/binwiederhier/ntfy @v2.25.0 sqlite

repository ↗ · DeepWiki ↗ · release v2.25.0 ↗
2,998 symbols 13,711 edges 264 files 887 documented · 30%
README

Special thanks to:

Warp sponsorship

Warp, built for coding with multiple AI agents.

Available for MacOS, Linux, & Windows


ntfy

ntfy.sh | Send push notifications to your phone or desktop via PUT/POST

Release Go Reference Tests Go Report Card codecov Discord Matrix Matrix space Healthcheck Gitpod

ntfy (pronounced "notify") is a simple HTTP-based pub-sub 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. There is also an open-source Android app available on Google Play or F-Droid, as well as an open source iOS app available on the App Store.

ntfy Pro 💸 🎉

I now offer paid plans for ntfy.sh if you don't want to self-host, or you want to support the development of ntfy (→ Purchase via web app). You can buy a plan for as low as $5/month. You can also donate via GitHub Sponsors, and Liberapay. I would be very humbled by your sponsorship. ❤️

Documentation

Getting started | Android/iOS | API | Install / Self-hosting | Building

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:

Announcements/beta testers

For announcements of new releases and cutting-edge beta versions, please subscribe to the ntfy.sh/announcements topic. If you'd like to test the iOS app, join TestFlight. 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 or and Liberapay. We would be humbled if you helped carry the server and developer account costs. Even small donations are very much appreciated.

Thank you to our commercial sponsors, who help keep the service running and the development going:

And a big fat Thank You to the individuals who have sponsored ntfy in the past, or are still sponsoring ntfy:

<img src="https://github.com/teomar

Extension points exported contracts — how you extend this code

Contexter (Interface)
Contexter allows structs to export a key-value pairs in the form of a Context [9 implementers]
log/types.go
Sender (Interface)
Sender sends all of ntfy's outgoing email: notification emails (the email-on-publish feature) as well as the magic-link [3 …
mail/sender.go
Auther (Interface)
Auther is an interface for authentication and authorization [2 implementers]
user/types.go
Limiter (Interface)
Limiter is an interface that implements a rate limiting mechanism, e.g. based on time or a fixed value [2 implementers]
util/limit.go
Beginner (Interface)
Beginner is an interface for types that can begin a database transaction. Both *sql.DB and *DB implement this. [1 implementers]
db/types.go
LookupFunc (FuncType)
LookupFunc is a function that is called by the LookupCache if the underlying value is out-of-date. It returns the new va
util/lookup_cache.go
Querier (Interface)
Querier is an interface for types that can execute SQL queries. *sql.DB, *sql.Tx, and *DB all implement this. [1 implementers]
db/types.go

Core symbols most depended-on inside this repo

String
called by 556
log/event.go
Error
called by 209
log/event.go
AddUser
called by 179
user/manager.go
Exec
called by 163
db/db.go
BasicAuth
called by 160
util/util.go
Get
called by 138
attachment/backend.go
Tag
called by 106
log/log.go
Debug
called by 102
log/event.go

Shape

Function 1,990
Method 780
Struct 156
Class 42
TypeAlias 13
Interface 11
FuncType 6

Languages

Go80%
TypeScript20%
Python1%

Modules by API surface

server/server_test.go235 symbols
user/manager.go112 symbols
user/manager_test.go110 symbols
server/server.go86 symbols
web/src/app/utils.js62 symbols
server/types.go58 symbols
server/visitor.go44 symbols
docs/static/js/config-generator.js42 symbols
web/src/app/AccountApi.js41 symbols
web/src/components/Account.jsx40 symbols
s3/client_test.go39 symbols
util/util_test.go38 symbols

Dependencies from manifests, versioned

cel.dev/exprv0.25.2 · 1×
cloud.google.com/gov0.123.0 · 1×
cloud.google.com/go/auth/oauth2adaptv0.2.8 · 1×
cloud.google.com/go/compute/metadatav0.9.0 · 1×
cloud.google.com/go/firestorev1.22.0 · 1×
cloud.google.com/go/longrunningv1.0.0 · 1×
cloud.google.com/go/monitoringv1.29.0 · 1×
cloud.google.com/go/storagev1.62.3 · 1×
firebase.google.com/go/v4v4.20.0 · 1×
github.com/AlekSi/pointerv1.2.0 · 1×

Datastores touched

ntfyDatabase · 1 repos
dbDatabase · 1 repos

For agents

$ claude mcp add ntfy \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact