Mastodon Federation Helper for secure fetch-enabled instances, on a user level. | https://github.com/kescherCode/federation-helper-mastodon
Go to file
Jeremy Kescher 432bf7b395
Fix crash
2022-08-07 15:10:38 +02:00
lib Fix crash 2022-08-07 15:10:38 +02:00
.env.example Initial commit 2022-08-07 14:51:19 +02:00
.gitignore Initial commit 2022-08-07 14:51:19 +02:00
README.md Initial commit 2022-08-07 14:51:19 +02:00
main.js Initial commit 2022-08-07 14:51:19 +02:00
package.json Initial commit 2022-08-07 14:51:19 +02:00
yarn.lock Initial commit 2022-08-07 14:51:19 +02:00

README.md

Federation Helper Mastodon Bot

Based on the Please Caption bot for Mastodon (account) (source code). It is basically a stripped down version, only keeping the "follow for follow" functionality.

This bot attempts to be a helper for your statuses to reach an instance that has secure fetch (aka AUTHORIZED_FETCH or "secure mode") enabled, by having them be federated to the instance the bot runs on. This is intended as an alternative for setting up relays between instances, as this does not work for secure fetch.

How does the bot work?

By recording a follow to your account, the instance will fetch your statuses, boosts, and other associated stuff automatically.

Who uses this bot?

Currently, it's just:

You can expand this list by setting up this bot yourself and either asking @kescher@catcatnya.com, or by opening an issue/Pull Request to this repo.

Installing the bot

Install dependencies

  • install NodeJS, preferably the latest LTS version of it.
  • install yarn.
  • Run:

yarn install

Create a Mastodon application and get the access token

You can do this from the settings in Mastodon. There's a 'Development' section. Give the bot at least read, write, and follow permissions.

Add environment variables

  • MASTODON_API_URL is the URL for the instance you're on.
  • MASTODON_ACCESS_TOKEN is the access token from the previous step

At /settings/profile, enable "Hide your social graph" if it's available. This will hide follows and followers of the bot account.

Run the bot

# See .env.example for the actual variable names and values
export EXAMPLE_VARIABLE='VALUE'
yarn start