Show full media from X and Bluesky links in messengers
Pasting X or Bluesky links into Discord or Telegram often results in plain text or broken images. This tool adds a short prefix to the link, displaying the original photos, videos, polls, and translations directly in the messenger interface. It is a simple solution that requires only changing the link format, with no complex setup.
The short prefix
Users simply add a specific word to the beginning of their existing links. For twitter.com links, add fx; for x.com links, add fixup; and for bsky.app links, add fx. When these modified links are shared in Discord or Telegram, the platform's built-in preview feature automatically renders the rich media content. No separate app installation or account linking is required, making it effortless for both the sender and the recipient.
Self-hosting setup
The service is written as a Cloudflare Worker and can be run locally via a Docker image. The Docker image uses Wrangler to run a local worker runtime; because Wrangler's binary is linked to glibc, it uses a node:24-bookworm-slim base instead of Alpine Linux. If you need a custom domain or branding, copy and modify the .env.example, wrangler.example.toml, and branding.example.json files, then build with the docker compose up -d --build command. The worker listens on port http://localhost:8787 by default, and you can test specific domain zones based on the Host header.
License and independence
This project is released under the MIT license, allowing free use, modification, and distribution. However, X, Tweet, and X are trademarks of X Corp, and this project has no relationship with X Corp or Twitter. The multi-image mosaic feature is based on Mosaic by Antonio32A, with improvements by Syfaro, Deer Spangle, and dangered wolf. If you find bugs or issues, you can open an issue to share them, and pull requests are welcome.