Talking to customers · Edition No. 60 · 24 Oct 2026

containrrr/shoutrrr

Sends a message to any of about twenty services from a single line of text.

← Talking to customersRead the whole edition →
05

containrrr/shoutrrr

💎 hidden gem
Shoutrrr: one line sends a message. Sends notifications to about twenty services.

1.7k stars · MIT · v0.8.0 (2023-08-20) · Track this in Scout

Sends a message to any of about twenty services from a single line of text.

▶Repo detailsthe review · specs · pros & cons · install

What it does

Each destination is written as a URL, so discord://token@channel or smtp://user:pass@host:25/?to=someone@example.com is the whole of the configuration. It covers around twenty services, including Discord, Slack, Telegram, Microsoft Teams, Matrix, Gotify, Pushover, Rocket.Chat, generic webhooks and plain email. It ships as a Go library for programs to call and as a single command-line program for scripts and scheduled jobs. Several destinations can be given at once, so one message reaches a chat room and an inbox together. A short template can shape the message body. The newest tagged version is v0.8.0, published in August 2023, while code was pushed on 1 July 2026. It is not a notification platform: there are no delivery guarantees, no retries you did not write, no queue, and no record of what was sent.

Why it matters

Who it suits. Anyone writing scripts or small programs that need to say something out loud, and who does not want a service in between. It suits a nightly job that should complain when it fails, and it suits a Go program that would otherwise grow a folder of per-service code. Skip it if the messages are being sent to customers rather than to the people running the system, because that needs delivery records, preferences and an unsubscribe link, and this has none of those.

Verdict. A small, honest tool that does one job, and the clearest date lesson in this edition. Its newest release is from 20 August 2023 and its newest code is from 1 July 2026 — thirty-five months apart, wider than any gap this report has recorded before. Judged by its releases page it looks like a project abandoned three years ago. It is not: it simply has not cut a tag. The practical consequence is real, though, and it is the warning: anyone installing the tagged version gets code from 2023, so install from the main line if a newer service is needed. The other thing to know is that the licence is MIT and the project is maintained by volunteers, so a service that changes its interface may stay broken for a while. For a much larger library with many more services, caronc/apprise from Edition 19 is the Python answer; for customer-facing notifications with records and preferences, novuhq/novu is the right shape of thing.

Stars1.7k
LicenceMIT
Latestv0.8.0 (2023-08-20)
Good
  • One line of text replaces per-service code, and that line can live in a configuration file.
  • Both a library and a single command, so programs and shell scripts use the same thing.
  • Around twenty services covered, including generic webhooks for anything not listed.
Watch for
  • The newest tagged version is from August 2023, so an ordinary install is three years old.
  • No retries, no queue and no record of what was sent. It sends, and that is all.
  • Written for one language, so other programs have to call the command instead.
Similar repositories
  • caronc/apprise

    BSD-2-Clause, covered in Edition 19; the same idea in Python with many more services supported and a far larger community, at the cost of needing Python present.

    Track this in Scout
  • novuhq/novu

    MIT with a separate licence on one folder; a full notification service with workflows, user preferences and a record of every message, which is a much bigger thing to run.

    Track this in Scout
Install
go install github.com/containrrr/shoutrrr/shoutrrr@latest
Screenshots
containrrr/shoutrrr: GitHub preview cardcontainrrr/shoutrrr: Screenshot 1containrrr/shoutrrr: Screenshot 2containrrr/shoutrrr: Screenshot 3containrrr/shoutrrr: Screenshot 4

On Stack Radar: Build & Ship › APIs & Developer Utilities › Notifications.

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.