/sky-follower-bridge

Instantly find and follow the same users from your X(Twitter) follower on Bluesky.

Primary LanguageTypeScriptMIT LicenseMIT

Sky Follower Bridge

Chrome web store version Chrome web store rating Chrome Web Store users

ko-fi Buy Me A Coffee

Instantly find and follow the same users from your 𝕏(Twitter) follows on Bluesky.

sky-follower-bridge.mp4

📖 Documentation

📦 Installation

Note

We recommend using the Chrome Web Store version as it's always up to date. Other store versions may lag behind in updates.

🚀 How to use

  1. On 𝕏 open Your Following, Followers, or Blocked users list, or the Members page of a public List.
  2. Use the Alt + B shortcut or click on the toolbar icon to launch the Sky Follower Bridge extension.
  3. Input your Bluesky login email or handle and an app password.
  4. Press the Finding Bluesky Users btn.
  5. Bluesky users will appear in the Modal.
  6. Click the "Follow" button to follow them on Bluesky.

Tip

For Firefox users, pressing Alt + B may not work. In that case, click the extension icon in the browser toolbar. https://support.mozilla.org/en-US/kb/extensions-button

🔧 Troubleshooting

  • Please feel free to mention @kawamataryo.bsky.social on Bluesky. They will provide support to ensure the tool is functioning properly.
  • If you get the error "Error: Something went wrong. ...", please reload the page and then click on the extension icon again.

🚨 Limitations

  • User search may fail due to rate limit in Bluesky's API. In this case, please wait for 2 to 3 minutes and execute the search again.

Development

Environment Variables

  • PLASMO_PUBLIC_BSKY_DOMAIN: The Bluesky domain to use (default: "bsky.social")

Building for Custom PDS Servers

If you want to use this extension with a custom PDS (Personal Data Server) instead of the default bsky.social, you have two options:

Option 1: Using .env file

  1. Clone the repository:
git clone https://github.com/kawamataryo/sky-follower-bridge.git
cd sky-follower-bridge
  1. Install dependencies:
npm install
  1. Create a .env file in the root directory:
echo "PLASMO_PUBLIC_BSKY_DOMAIN=bsky.social" > .env
  1. Build the extension:
# For Chrome
npm run build
npm run package

# For Firefox
npm run build:firefox
npm run package:firefox

Option 2: Using environment variable directly

You can also pass the domain directly during build:

# For Chrome
PLASMO_PUBLIC_BSKY_DOMAIN=your-custom-domain.com npm run build
PLASMO_PUBLIC_BSKY_DOMAIN=your-custom-domain.com npm run package

# For Firefox
PLASMO_PUBLIC_BSKY_DOMAIN=your-custom-domain.com npm run build:firefox
PLASMO_PUBLIC_BSKY_DOMAIN=your-custom-domain.com npm run package:firefox

Loading the Built Extension

After building, you can load the extension:

For Chrome/Edge:

  1. Go to chrome://extensions/ (or edge://extensions/)
  2. Enable "Developer mode" in the top right
  3. Click "Load unpacked"
  4. Select the build/chrome-mv3-prod directory

For Firefox:

  1. Go to about:debugging#/runtime/this-firefox
  2. Click "Load Temporary Add-on"
  3. Select the zip file from the dist directory

Notes

  • The built extension will be in the build directory
  • The packaged extension (.zip) will be in the dist directory
  • When using a custom PDS, users will need to use handles in the format username.your-custom-domain.com
  • Make sure your custom PDS server is compatible with the AT Protocol