FxEmbed
修复 Discord/Telegram 中 X 与 Bluesky 链接预览的开源工具
FxEmbed —— 修复社交链接预览的 Cloudflare Worker 开源方案
项目简介
FxEmbed 是一套开源的 Cloudflare Worker 解决方案,托管着 FxTwitter、FixupX 和 FxBluesky 三个热门服务的核心代码。它解决了一个广泛存在的体验问题:当你在 Discord、Telegram、Slack 等平台发送 Twitter/X 或 Bluesky 链接时,这些平台默认只能显示一个简陋的单图卡片,缺失视频、投票、多图和翻译等信息。FxEmbed 通过改写链接前缀(twitter.com → fxtwitter.com 等),将请求路由至支持丰富预览的服务端,返回包含多图、视频、投票、翻译等完整信息的嵌入卡片。项目采用 MIT 许可证,完全开源,支持自托管。
核心功能
多图与视频预览。 原始 Twitter/X 链接在 Discord 等平台通常只显示一张图。FxTwitter 前缀让平台获取帖子的完整媒体列表,嵌入消息中展示多张图片或视频缩略图,而非干巴巴的链接文字。
投票结果嵌入。 Twitter 投票在普通链接预览中完全不可见。使用 FxEmbed 前缀后,投票选项和当前票数会直接渲染在聊天卡片中,适合社区运营和数据分析场景。
翻译功能。 平台原生不支持翻译 Tweet 内容,但 FixupX 前缀可以返回目标语言的翻译文本,适合多语言社区运营或出海团队监控竞品动态。
自托管支持。 项目提供完整的 Docker 镜像和 Docker Compose 配置,技术团队可以将整套服务部署在自己的 Cloudflare Worker 兼容环境中,使用自有域名、定制品牌和凭据,实现完全自主控制。
多平台兼容。 除了 Discord 和 Telegram,项目同时支持 Signal、Slack、Teams 等主流聊天工具的链接预览解析,覆盖范围广。
技术实现
FxEmbed 基于 Cloudflare Workers 架构构建,核心技术栈为 TypeScript + Workers runtime + Wrangler。Cloudflare Workers 是边缘计算方案,请求在全球数百个数据中心就近处理,延迟极低、可用性极高。
路由机制依赖 HTTP Host 头匹配:不同前缀(fxtwitter.com、fixupx.com、fxbluesky.app)对应不同路由规则,全部复用同一套 Worker 代码,通过 Host 头区分请求来源并调用对应服务提供商的 API 获取数据。
本地开发使用 Wrangler 的 workerd 运行时模拟 Workers 环境,Docker Compose 一键启动本地模拟器,无需注册 Cloudflare 账号即可完整复现所有功能。项目同时提供完整的 Vitest 单元测试套件,保证各平台解析逻辑的稳定性。
快速上手
第一步:准备环境。 安装 Docker 和 Docker Compose(项目明确要求 node:24-bookworm-slim 基础镜像,不支持 Alpine/musl)。
第二步:复制配置模板。 将项目中的环境变量模板、Wrangler 配置、品牌配置复制为正式文件:cp .env.example .env && cp wrangler.example.toml wrangler.toml && cp branding.example.json branding.json。
第三步:修改域名和凭据。 编辑 .env 和 wrangler.toml,填入目标域名、平台 API 凭据(Twitter/X、Bluesky)等信息。
第四步:构建并启动。 docker compose up -d --build,Worker 监听 localhost:8787。使用 curl 测试时需携带正确 Host 头:curl -H "Host: fxtwitter.com" -H "User-Agent: Discordbot/2.0" http://localhost:8787/user/status/123。
第五步:配置自有域名。 在 Cloudflare 控制台将目标域名(如 fxtwitter.com)CNAME 至 Worker 部署地址,完成生产上线。
适用人群
社区运营者。 在 Discord 或 Telegram 频道分享 X/Bluesky 内容时,希望链接卡片直接展示完整媒体而非简陋文字,提升信息传达效率。
出海团队与多语言社区。 监控竞品 Twitter 动态时,需要快速获取翻译内容;或运营多语言社区时,需要让成员看到翻译后的推文。
技术团队与自托管爱好者。 希望完全控制链接预览服务,使用自有域名和品牌,或在合规要求下自行托管数据处理逻辑。
数据聚合与分析场景。 通过 API 获取他人帖子的完整媒体内容,用于舆情监控或数据归档,无需手动逐条访问。
评论与建议
登录 后参与评论或提建议