You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Astro 2b104eb71c Cargo.lock: update 2 months ago
src endpoint: fix content-type parsing 2 months ago
static static/index.html: link source 5 months ago
.gitignore README: init 5 months ago
Cargo.lock Cargo.lock: update 2 months ago
Cargo.toml actor: normalize unicode away for TagRelay 3 months ago
LICENSE LICENSE: add 5 months ago README: init 5 months ago
config.yaml add support for multiple streams 5 months ago
flake.lock flake.lock: Update 2 months ago
flake.nix nix: install static 6 months ago
nixos-module.nix Fix eval 5 months ago


A follow-only ActivityPub relay that connects to Mastodon's Streaming API.

You don't need to run this yourself, just use the instance at



NixOS/Flakes users are in luck: not only does this build, it also comes with a NixOS module!

Anyone else installs a Rust toolchain to build with:

cargo build --release

Generate signing keypair

ActivityPub messages are signed using RSA keys. Generate a keypair first:

openssl genrsa -out private-key.pem 4096
openssl rsa -in private-key.pem -pubout -out public-key.pem

Let your config.yaml point there.


Create a PostgreSQL database and user, set them in your config.yaml.

The program will create its schema on start.


Should everyone connect to the streaming API of the big popular Mastodon instances?

Once these connections become a problem, they may become disallowed, resulting in problems for everyone. That's why serves the firehose feed through the streaming API, too.

You can let this service use as listed in the default config.yaml.