Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/astro/buzzrelay
Source to relay.fedi.buzz: relay the streaming API of Mastodon instances
https://github.com/astro/buzzrelay
activitypub fedibuzz relay
Last synced: 5 days ago
JSON representation
Source to relay.fedi.buzz: relay the streaming API of Mastodon instances
- Host: GitHub
- URL: https://github.com/astro/buzzrelay
- Owner: astro
- License: agpl-3.0
- Created: 2023-01-11T18:31:57.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-29T22:33:35.000Z (2 months ago)
- Last Synced: 2024-10-30T00:45:07.580Z (2 months ago)
- Topics: activitypub, fedibuzz, relay
- Language: Rust
- Homepage: https://relay.fedi.buzz
- Size: 315 KB
- Stars: 74
- Watchers: 8
- Forks: 10
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# buzzrelay
A follow-only ActivityPub relay that connects to Mastodon's [Streaming
API](https://docs.joinmastodon.org/methods/streaming/#public).You don't need to run this yourself, just use the instance at
[relay.fedi.buzz](https://relay.fedi.buzz/).## Setup
See also: [Notes on an setting up a fediverse relay with FediBuzz on an Ubuntu server.](https://box464.com/posts/fediverse-relays/)
### Build
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:
```bash
cargo build --release
```### Generate signing keypair
ActivityPub messages are signed using RSA keys. Generate a keypair
first:```bash
openssl genrsa -out private-key.pem 4096
openssl rsa -in private-key.pem -pubout -out public-key.pem
```Let your `config.yaml` point there.
### Database
Create a PostgreSQL database and user, set them in your `config.yaml`.
The program will create its schema on start.
## Ethics
*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 **fedi.buzz** serves
the firehose feed through the streaming API, too.You can let this service use **fedi.buzz** as listed in the default
`config.yaml`.