Skip to content

Repository files navigation

Mastodon to Bluesky

Crosspost from Mastodon to Bluesky

GitHub release License

This scripts listens to your Mastodon account and crossposts your toots to your Bluesky account. It uses the Mastodon API and the Bluesky API to achieve this. The script is written in Typescript and can be run on your local machine or on a server.

Coverage

Statements Branches Functions Lines
Statements Branches Functions Lines

Installation

You can run the script directly using NodeJS or you can use our Docker image.

Direct

  • Clone this repository and install the dependencies:
git clone https://github.com/mauricerenck/mastodon-to-bluesky.git
cd mastodon-to-bluesky
npm install

Docker 🐳

Build Image

docker build -t mastodon-to-bluesky .

# optional with Node version
docker build --build-arg NODE_VERSION=24 -t mastodon-to-bluesky .

Compose

  • Docker and Docker Compose should installed
  • copy docker-compose.yml to your local machine
  • change environment variables
  • start via docker compose up -d
  • stop via docker compose down

Configuration

Create a .env file in the root directory of the project and add the following variables:

MASTODON_INSTANCE: 'https://mastodon.instance'
MASTODON_USER: 'username'
BLUESKY_ENDPOINT: 'https://bsky.social'
BLUESKY_HANDLE: 'USERNAME.bsky.social'
BLUESKY_PASSWORD: 'PASSWORD'
BLUESKY_MAX_POST_LENGTH: 300
INTERVAL_MINUTES: 5

For more details see: https://maurice-renck.de/hub/tooling/crosspost-from-mastodon-to-bluesky

About

A Node.js script for crossposting from mastodon to bluesky

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages