{"id":13393481,"url":"https://github.com/nikoksr/notify","last_synced_at":"2025-05-12T15:33:02.982Z","repository":{"id":37323989,"uuid":"332576508","full_name":"nikoksr/notify","owner":"nikoksr","description":"A dead simple Go library for sending notifications to various messaging services.","archived":false,"fork":false,"pushed_at":"2025-05-06T20:26:49.000Z","size":2001,"stargazers_count":3350,"open_issues_count":43,"forks_count":241,"subscribers_count":19,"default_branch":"main","last_synced_at":"2025-05-06T21:32:43.011Z","etag":null,"topics":["aws-ses","bot","discord","email","go","golang","hacktoberfest","messaging","microsoft-teams","notification","notify","pushbullet","rocketchat","sendgrid","slack","telegram","twilio","twitter","wechat","whatsapp"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nikoksr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-01-24T23:07:29.000Z","updated_at":"2025-05-06T03:38:02.000Z","dependencies_parsed_at":"2023-12-21T04:29:55.301Z","dependency_job_id":"c7204f50-01f9-42b9-ab6b-a9fd6650d5b1","html_url":"https://github.com/nikoksr/notify","commit_stats":{"total_commits":898,"total_committers":38,"mean_commits":23.63157894736842,"dds":0.4866369710467706,"last_synced_commit":"7eae8e81d9208e8e0deae951d13893a25c19c457"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikoksr%2Fnotify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikoksr%2Fnotify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikoksr%2Fnotify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikoksr%2Fnotify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nikoksr","download_url":"https://codeload.github.com/nikoksr/notify/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253765972,"owners_count":21960824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-ses","bot","discord","email","go","golang","hacktoberfest","messaging","microsoft-teams","notification","notify","pushbullet","rocketchat","sendgrid","slack","telegram","twilio","twitter","wechat","whatsapp"],"created_at":"2024-07-30T17:00:53.956Z","updated_at":"2025-05-12T15:33:02.948Z","avatar_url":"https://github.com/nikoksr.png","language":"Go","readme":"\u003cdiv align=\"center\"\u003e\n\u003cimg\n    width=40%\n    src=\"assets/gopher-letter.svg\"\n    alt=\"notify logo\"\n/\u003e\n\n[![codecov](https://codecov.io/gh/nikoksr/notify/branch/main/graph/badge.svg?token=QDON0KO2WV)](https://codecov.io/gh/nikoksr/notify)\n[![Go Report Card](https://goreportcard.com/badge/github.com/nikoksr/notify)](https://goreportcard.com/report/github.com/nikoksr/notify)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/37fdff3c275c4a72a3a061f2d0ec5553)](https://www.codacy.com/gh/nikoksr/notify/dashboard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=nikoksr/notify\u0026amp;utm_campaign=Badge_Grade)\n[![Maintainability](https://api.codeclimate.com/v1/badges/b3afd7bf115341995077/maintainability)](https://codeclimate.com/github/nikoksr/notify/maintainability)\n[![go.dev reference](https://img.shields.io/badge/go.dev-reference-007d9c?logo=go\u0026logoColor=white\u0026style=flat)](https://pkg.go.dev/github.com/nikoksr/notify)\n\n\u003c/div\u003e\n\n\u003e \u003cp align=\"center\"\u003eA dead simple Go library for sending notifications to various messaging services.\u003c/p\u003e\n\n\u003e [!NOTE]\n\u003e **[July 2024 Update]**: Notify is back under active maintenance! [Read the full announcement here](https://github.com/nikoksr/notify/discussions/840).\n\n\u003ch1\u003e\u003c/h1\u003e\n\n## About \u003ca id=\"about\"\u003e\u003c/a\u003e\n\n*Notify* was born out of my own need to have my API servers running in production be able to notify me when critical errors occur. Of course, _Notify_ can be used for any other purpose as well. The library is kept as simple as possible for quick integration and ease of use.\n\n## Disclaimer \u003ca id=\"disclaimer\"\u003e\u003c/a\u003e\n\nAny misuse of this library is your own liability and responsibility and cannot be attributed to the authors of this library.  See [license](LICENSE) for more.\n\nSpamming through the use of this library **may get you permanently banned** on most supported platforms.\n\nSince Notify is highly dependent on the consistency of the supported external services and the corresponding latest client libraries, we cannot guarantee its reliability nor its consistency, and therefore you should probably not use or rely on Notify in critical scenarios.\n\n## Install \u003ca id=\"install\"\u003e\u003c/a\u003e\n\n```sh\ngo get -u github.com/nikoksr/notify\n```\n\n## Example usage \u003ca id=\"usage\"\u003e\u003c/a\u003e\n\n```go\n// Create a telegram service. Ignoring error for demo simplicity.\ntelegramService, _ := telegram.New(\"your_telegram_api_token\")\n\n// Passing a telegram chat id as receiver for our messages.\n// Basically where should our message be sent?\ntelegramService.AddReceivers(-1234567890)\n\n// Tell our notifier to use the telegram service. You can repeat the above process\n// for as many services as you like and just tell the notifier to use them.\n// Inspired by http middlewares used in higher level libraries.\nnotify.UseServices(telegramService)\n\n// Send a test message.\n_ = notify.Send(\n\tcontext.Background(),\n\t\"Subject/Title\",\n\t\"The actual message - Hello, you awesome gophers! :)\",\n)\n```\n\n#### Recommendation \u003ca id=\"recommendation\"\u003e\u003c/a\u003e\n\nIn this example, we use the global `Send()` function. Similar to most logging libraries such as\n[zap](https://github.com/uber-go/zap), we provide global functions for convenience. However, as with most logging\nlibraries, we also recommend avoiding the use of global functions as much as possible. Instead, use one of our versatile\nconstructor functions to create a new local `Notify` instance and pass it down the stream.\n\n## Contributing \u003ca id=\"contributing\"\u003e\u003c/a\u003e\n\nYes, please! Contributions of all kinds are very welcome! Feel free to check our [open issues](https://github.com/nikoksr/notify/issues). Please also take a look at the [contribution guidelines](https://github.com/nikoksr/notify/blob/main/CONTRIBUTING.md).\n\n\u003e Psst, don't forget to check the list of [missing services](https://github.com/nikoksr/notify/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3Aaffects%2Fservices+label%3A%22help+wanted%22+no%3Aassignee) waiting to be added by you or create [a new issue](https://github.com/nikoksr/notify/issues/new?assignees=\u0026labels=affects%2Fservices%2C+good+first+issue%2C+hacktoberfest%2C+help+wanted%2C+type%2Fenhancement%2C+up+for+grabs\u0026template=service-request.md\u0026title=feat%28service%29%3A+Add+%5BSERVICE+NAME%5D+service) if you want a new service to be added.\n\n## Supported services \u003ca id=\"supported_services\"\u003e\u003c/a\u003e\n\n\u003e Click [here](https://github.com/nikoksr/notify/issues/new?assignees=\u0026labels=affects%2Fservices%2C+good+first+issue%2C+hacktoberfest%2C+help+wanted%2C+type%2Fenhancement%2C+up+for+grabs\u0026template=service-request.md\u0026title=feat%28service%29%3A+Add+%5BSERVICE+NAME%5D+service) to request a missing service.\n\n| Service                                                                           | Path                                     | Credits                                                                                         |       Status       |\n|-----------------------------------------------------------------------------------|------------------------------------------|-------------------------------------------------------------------------------------------------|:------------------:|\n| [Amazon SES](https://aws.amazon.com/ses)                                          | [service/amazonses](service/amazonses)   | [aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2)                                       | :heavy_check_mark: |\n| [Amazon SNS](https://aws.amazon.com/sns)                                          | [service/amazonsns](service/amazonsns)   | [aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2)                                       | :heavy_check_mark: |\n| [Bark](https://apps.apple.com/us/app/bark-customed-notifications/id1403753865)    | [service/bark](service/bark)             | -                                                                                               | :heavy_check_mark: |\n| [DingTalk](https://www.dingtalk.com)                                              | [service/dinding](service/dingding)      | [blinkbean/dingtalk](https://github.com/blinkbean/dingtalk)                                     | :heavy_check_mark: |\n| [Discord](https://discord.com)                                                    | [service/discord](service/discord)       | [bwmarrin/discordgo](https://github.com/bwmarrin/discordgo)                                     | :heavy_check_mark: |\n| [Email](https://wikipedia.org/wiki/Email)                                         | [service/mail](service/mail)             | [jordan-wright/email](https://github.com/jordan-wright/email)                                   | :heavy_check_mark: |\n| [Firebase Cloud Messaging](https://firebase.google.com/docs/cloud-messaging)      | [service/fcm](service/fcm)               | [appleboy/go-fcm](https://github.com/appleboy/go-fcm)                                           | :heavy_check_mark: |\n| [Google Chat](https://workspace.google.com/intl/en/products/chat/)                | [service/googlechat](service/googlechat) | [googleapis/google-api-go-client](https://google.golang.org/api/chat/v1)                        | :heavy_check_mark: |\n| [HTTP](https://wikipedia.org/wiki/Hypertext_Transfer_Protocol)                    | [service/http](service/http)             | -                                                                                               | :heavy_check_mark: |\n| [Lark](https://www.larksuite.com/)                                                | [service/lark](service/lark)             | [go-lark/lark](https://github.com/go-lark/lark)                                                 | :heavy_check_mark: |\n| [Line](https://line.me)                                                           | [service/line](service/line)             | [line/line-bot-sdk-go](https://github.com/line/line-bot-sdk-go)                                 | :heavy_check_mark: |\n| [Line Notify](https://notify-bot.line.me)                                         | [service/line](service/line)             | [utahta/go-linenotify](https://github.com/utahta/go-linenotify)                                 | :heavy_check_mark: |\n| [Mailgun](https://www.mailgun.com)                                                | [service/mailgun](service/mailgun)       | [mailgun/mailgun-go](https://github.com/mailgun/mailgun-go)                                     | :heavy_check_mark: |\n| [Matrix](https://www.matrix.org)                                                  | [service/matrix](service/matrix)         | [mautrix/go](https://github.com/mautrix/go)                                                     | :heavy_check_mark: |\n| [Microsoft Teams](https://www.microsoft.com/microsoft-teams)                      | [service/msteams](service/msteams)       | [atc0005/go-teams-notify](https://github.com/atc0005/go-teams-notify)                           | :heavy_check_mark: |\n| [PagerDuty](https://www.pagerduty.com)                                            | [service/pagerduty](service/pagerduty)   | [PagerDuty/go-pagerduty](https://github.com/PagerDuty/go-pagerduty)                             | :heavy_check_mark: |\n| [Plivo](https://www.plivo.com)                                                    | [service/plivo](service/plivo)           | [plivo/plivo-go](https://github.com/plivo/plivo-go)                                             | :heavy_check_mark: |\n| [Pushover](https://pushover.net/)                                                 | [service/pushover](service/pushover)     | [gregdel/pushover](https://github.com/gregdel/pushover)                                         | :heavy_check_mark: |\n| [Pushbullet](https://www.pushbullet.com)                                          | [service/pushbullet](service/pushbullet) | [cschomburg/go-pushbullet](https://github.com/cschomburg/go-pushbullet)                         | :heavy_check_mark: |\n| [Reddit](https://www.reddit.com)                                                  | [service/reddit](service/reddit)         | [vartanbeno/go-reddit](https://github.com/vartanbeno/go-reddit)                                 | :heavy_check_mark: |\n| [RocketChat](https://rocket.chat)                                                 | [service/rocketchat](service/rocketchat) | [RocketChat/Rocket.Chat.Go.SDK](https://github.com/RocketChat/Rocket.Chat.Go.SDK)               | :heavy_check_mark: |\n| [SendGrid](https://sendgrid.com)                                                  | [service/sendgrid](service/sendgrid)     | [sendgrid/sendgrid-go](https://github.com/sendgrid/sendgrid-go)                                 | :heavy_check_mark: |\n| [Slack](https://slack.com)                                                        | [service/slack](service/slack)           | [slack-go/slack](https://github.com/slack-go/slack)                                             | :heavy_check_mark: |\n| [Syslog](https://wikipedia.org/wiki/Syslog)                                       | [service/syslog](service/syslog)         | [log/syslog](https://pkg.go.dev/log/syslog)                                                     | :heavy_check_mark: |\n| [Telegram](https://telegram.org)                                                  | [service/telegram](service/telegram)     | [go-telegram-bot-api/telegram-bot-api](https://github.com/go-telegram-bot-api/telegram-bot-api) | :heavy_check_mark: |\n| [TextMagic](https://www.textmagic.com)                                            | [service/textmagic](service/textmagic)   | [textmagic/textmagic-rest-go-v2](https://github.com/textmagic/textmagic-rest-go-v2)             | :heavy_check_mark: |\n| [Twilio](https://www.twilio.com/)                                                 | [service/twilio](service/twilio)         | [kevinburke/twilio-go](https://github.com/kevinburke/twilio-go)                                 | :heavy_check_mark: |\n| [Twitter](https://twitter.com)                                                    | [service/twitter](service/twitter)       | [drswork/go-twitter](https://github.com/drswork/go-twitter)                                     | :heavy_check_mark: |\n| [Viber](https://www.viber.com)                                                    | [service/viber](service/viber)           | [mileusna/viber](https://github.com/mileusna/viber)                                             | :heavy_check_mark: |\n| [WeChat](https://www.wechat.com)                                                  | [service/wechat](service/wechat)         | [silenceper/wechat](https://github.com/silenceper/wechat)                                       | :heavy_check_mark: |\n| [Webpush Notification](https://developer.mozilla.org/en-US/docs/Web/API/Push_API) | [service/webpush](service/webpush)       | [SherClockHolmes/webpush-go](https://github.com/SherClockHolmes/webpush-go/)                    | :heavy_check_mark: |\n| [WhatsApp](https://www.whatsapp.com)                                              | [service/whatsapp](service/whatsapp)     | [Rhymen/go-whatsapp](https://github.com/Rhymen/go-whatsapp)                                     |        :x:         |\n\n## Special Thanks \u003ca id=\"special_thanks\"\u003e\u003c/a\u003e\n\n### Maintainers \u003ca id=\"maintainers\"\u003e\u003c/a\u003e\n\n- [@svaloumas](https://github.com/svaloumas)\n\n### Logo \u003ca id=\"logo\"\u003e\u003c/a\u003e\n\nThe [logo](https://github.com/MariaLetta/free-gophers-pack) was made by the amazing [MariaLetta](https://github.com/MariaLetta).\n\n## Support \u003ca id=\"support\"\u003e\u003c/a\u003e\n\nIf you find this project useful, consider giving it a ⭐️! Your support helps bring more attention to the project, allowing us to enhance it even further.\n\nWhile you're here, feel free to check out my other work:\n\n- [nikoksr/konfetty](https://github.com/nikoksr/konfetty) - Zero-dependency, type-safe and powerful post-processing for your existing config solution in Go.\n","funding_links":[],"categories":["Go","Programming","🧰 工具列表"],"sub_categories":["Golang","后端开发"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikoksr%2Fnotify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnikoksr%2Fnotify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikoksr%2Fnotify/lists"}