AD
Boost Your Brand on BlueSky—Exclusive banner space to amplify your reach within the BlueSky community.
BSkyInfo LogoBskyInfo
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryArticlesGuidesGlossaryBluesky SDKsSponsor
Submit
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryGuidesGlossaryArticlesBluesky SDKsSponsorSubmit
  1. SDKs
  2. /JavaScript
  3. /twitter-to-bsky
59de44955ebd

twitter-to-bsky

A JavaScript SDK for Bluesky and AT Protocol by 59de44955ebd

Crosspost from Twitter/X to Bluesky and Mastodon directly in the web browser

GitHub Stats

59stars
4forks
1contributors
10open issues

Dates

Created:October 27, 2023
Last updated:May 15, 2025

README

The following content is from twitter-to-bsky's GitHub repository. All rights reserved by the original author.

twitter-to-bsky - crosspost from Twitter/X to Bluesky and Mastodon directly in the web browser

twitter-to-bsky is a userscript written for Tampermonkey or Violentmonkey running in desktop web browsers (Chrome/Firefox/Edge).

It allows to automatically crosspost to Bluesky and/or Mastodon when writing posts in the Twitter/X web application in a desktop browser.

While crossposting is generally considered a bad practice, in this case it makes sense, its purpose is to ease the transistion from X to Bluesky or Mastodon while there a still many users left that havn't followed on the new platform yet.

Crossposting obviously only makes sense for generic posts that e.g. link to a news article or blog post, but not for replies, mentions, DMs etc. which are Twitter/X-specific.

Features

twitter-to-bsky supports plain text posts, posts with one or several attached media files and posts containing a preview card, based on some entered URL. Note that Bluesky doesn't support videos/GIFs yet.

Setup

Install and activate either the Tampermonkey or Violentmonkey browser addon, then open this URL (the actual userscript) in the browser and allow the addon to install it as new userscript.

If you now (re-)load the Twitter/X page, it will be "enhanced" with the following new elements:

  • a black cross button at the bottom of the navigation bar that allows to enter your Mastodon and/or Bluesky credentials in a small popup dialog (see details below).
  • "Mastodon" and "Bluesky" checkboxes in the toolbar of the new post area (both inline and dialog). If a checkbox is checked, pressing the "Post" button will send the same post also to the corresponding platform.

Mastodon settings

  • "Mastodon Instance URL" is the base URL of your Mastodon instance, e.g. "https://mastodon.social".
  • "Mastodon Access Token" is an access token that you can create in the Mastodon web app via Settings -> Development -> New application.

Bluesky settings

  • "Bluesky Handle" is your full handle (including ".bsky.social", if this applies).
  • "Bluesky App Password" is not your main Bluesky password, but instead a so called "app password", in the Bluesky web app navigate to Settings -> Advanced -> App Passwords and create a new app password with a single click, then copy it and paste it into this field and save the changes.

Known limitation

While the script works fine with Chrome + Violentmonkey, the combination Firefox + Violentmonkey unfortunately has issues, about every other time the script is blocked due to CSP. This does not happen when using Tampermonkey, so for Firefox it's recommended to use Tampermonkey instead.

Screenshots

Twitter/X enhanced with crosspost elements
Twitter/X enhanced with crosspost elements

Settings dialog and system notifications (Windows 11)
Settings dialog and system notifications

Related SDKs

mary-extatcute

a collection of lightweight TypeScript packages for AT Protocol, the protocol powering Bluesky.

318•JavaScript
aliceisjustplayinglabeler-starter-kit-bsky

Use this repository to get started with your own Bluesky Labeler.

167•JavaScript
bluesky-socialfeed-generator

ATProto Feed Generator Starter Kit

1856•JavaScript
bluesky-socialatproto

AT Protocol Reference Implementation (TypeScript)

8526•JavaScript
skyware-jsfirehose

A dead simple client for subscribing to an ATProto Relay ("firehose").

37•JavaScript
skyware-jsjetstream

A fully typed client for the Bluesky Jetstream (https://github.com/bluesky-social/jetstream) service.

47•JavaScript

Resources

GitHub Repository

License

Unknown

Author

59de44955ebd
59de44955ebd

Activity

Last commit: May 15, 2025
Commit frequency: Unknown

Our Sponsors

Your Brand Here!

50K+ engaged viewers every month

Limited spots available!

📧 Contact us via email🦋 Contact us on Bluesky
BSkyInfo LogoBskyInfo

The Most Comprehensive Bluesky Tools Directory

Stay updated with the latest Bluesky tools and ecosystem news 🦋

Bluesky butterfly logo
Quick LinksSubmit a ToolSponsorAboutLegal Information
ToolsFeed DirectoryLabeler DirectorySchedulingAnalyticsAll ToolsCategoriesCollectionsTags
ResourcesArticlesBluesky GuidesBluesky GlossaryBluesky SDKsBluesky ResourcesSkyRaffleMeida Coverage
Our ProductsRaffleBlueAiTeach ToolsLaiewAI affiliate listFirsto

This website may contain affiliate links

© 2025 BskyInfo. All rights reserved.