FxEmbed/FxEmbed — a trending TypeScript project
Fix X/Twitter and Bluesky embeds! Use multiple images, videos, polls, translations and more on Discord, Telegram and others
FxEmbed/FxEmbed — TypeScript · 5,251 stars · 242 forks · +165 today
Fix X/Twitter and Bluesky embeds! Use multiple images, videos, polls, translations and more on Discord, Telegram and others
FxEmbed 
#Home of FxTwitter, FixupX, and FxBluesky
#Embed videos, polls, quotes, translations, & more on Discord, Telegram, and others!
#twitter.com: Add fx before your twitter.com link
#x.com: Add fixup before your x.com link
#bsky.app: Add fx before your bsky.app link
#Docker
#FxEmbed is a Cloudflare Worker, so the Docker image runs the local Workers runtime through Wrangler rather than starting a plain Node.js server. The image uses node:24-bookworm-slim because Wrangler's workerd binary is glibc-linked and does not run reliably on Alpine/musl.
Before building, copy and edit the local configuration files if you need custom domains, branding, or credentials:
cp .env.example .env
cp wrangler.example.toml wrangler.toml
cp branding.example.json branding.json
Build and run with Docker Compose:
docker compose up -d --build
The worker listens on http://localhost:8787. Because FxEmbed routes by the Host header, test a specific realm like this:
curl -H "Host: fxtwitter.com" -H "User-Agent: Discordbot/2.0" "http://localhost:8787/user/status/123"
You can also open http://localhost:8787/ without a Host header to see the local realm prefixes.
Environment variables from .env are bundled during the Docker build, so rebuild the image after changing domain lists or other build-time configuration:
docker compose up -d --build
Runtime secrets such as CREDENTIAL_KEY and EXCEPTION_DISCORD_WEBHOOK can be supplied through your shell or Compose .env file. Stop the service with:
docker compose down
Licensed under the permissive MIT license. Feel free to send a pull request!
Star History
#Bugs or issues?
#Feel free to open an issue
Additional Credits
#Mosaic Multi-image combiner by Antonio32A and improved by Syfaro, Deer Spangle, and dangered wolf
Everyone else who has contributed to the main project!
Disclaimer
#Twitter, Tweet, and X are trademarks of X Corp. This project is not affiliated in any way with X Corp or Twitter.
Content above is the README of FxEmbed/FxEmbed, reproduced from GitHub’s trending list. All rights remain with the original authors.
Newsletter
New posts in your inbox. Confirm by email, unsubscribe any time.
More in Web Development
View allTHU-MAIC/OpenMAIC — a trending TypeScript project
Open Multi-Agent Interactive Classroom — Get an immersive, multi-agent learning experience in just one click
via GitHub · 4 min
Orkas-AI/Orkas — a trending JavaScript project
Orkas is an open-source (MIT), local-first AI team for your desktop: a Commander turns your goal into to-dos and coordinates 16 built-in specialist agents plus Claude Code, Codex, OpenCode, OpenClaw and Hermes, with projects, scheduled automations and connectors. Free app for macOS & Windows; built-
via GitHub · 16 min
CopilotKit/OpenBot — a trending TypeScript project
Open-source AI coworkers that each get a computer of their own: a browser, files and tools, with every action decided before it happens and recorded after. Bring any AG-UI agent.
via GitHub · 4 min
milind-soni/OpenMausBot — a trending TypeScript project
Open-source Grok Bot alternative with a virtual machine that bots can use
via GitHub · 10 min
Comments
Posting as a guest