Skip to content
A Dockerized Node service for pushing new toots from a Mastodon instance to a Slack channel.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.dockerignore
.eslintrc
.gitignore
Dockerfile
README.md
docker-compose.yml
index.js
package.json
yarn.lock

README.md

tusky

A Dockerized Node service for pushing new toots from a Mastodon instance to a Slack channel.

tusky

Running tusky

What you'll need

  • A Mastodon URL and access token
  • A Slack "incoming webhook" endpoint
  • Docker (Or Node 6+ and Yarn if running natively)

Create a .env file in your tusky directory that defines the following environment variables:

ACCESS_TOKEN=mastodon-access-token
MASTODON_URL=https://some-mastodon-instance.com
SLACK_WEBHOOK_ENDPOINT=https://hook.some-slack-instance.com
ENDPOINT=public/local

Default ENDPOINT is public, which will show messages from remote instances.

Once you have your environment variables set up, run docker-compose up -d to start the container. This will start a tusky Docker container in the background. After that you're all set - tusky will listen for new Mastodon toots and post to your configured Slack endpoint to push the toots into your Slack instance.

Note: This doesn't have crash recovery or any real error handling yet, so the docker container may die intermittently.

Non-Dockerized Use

Install dependencies with Yarn

cd tusky
yarn

Start app with yarn start or use nodemon for auto-reloading in development. e.g. nodemon index.js.

You can’t perform that action at this time.