ConvertX
C4illin/ConvertX加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
ConvertX 是一个开源自托管在线文件转换工具,一行 Docker 命令启动,立即拥有支持 1000+ 种格式的全功能文件转换平台——从图片、视频、PDF 到 3D 模型,全部在浏览器里搞定,数据永远留在你自己的服务器上。

你一定遇到过这些场景:用户发来一个 .heic 格式的照片打不开、需要把几十页 PDF 合并成一个、领导扔给你一个 .doc 但你只有 WPS、想把 Markdown 转成 PDF 印刷版……
每次都要去找在线转换工具,上传文件、等待处理、下载回来——不仅慢,还要把文件交给陌生人。ConvertX 的出现,就是为了彻底终结这种窘境:把转换能力收回到你自己的服务器,随时用、随便用、永远不担心文件泄露。
ConvertX 底层集成了 23 个专业转换引擎,覆盖以下品类:
| 类别 | 底层工具 | 格式数 |
|---|---|---|
| 视频/音频 | FFmpeg | ~472 进 / ~199 出 |
| 图片处理 | ImageMagick / GraphicsMagick / Vips | 245 进 / 183 出 |
| 文档转换 | LibreOffice / Pandoc / Calibre | 110 进 / 107 出 |
| 3D 资产 | Assimp | 77 进 / 23 出 |
| 电子书 | Calibre | 26 进 / 19 出 |
| 矢量图 | Inkscape / dvisvgm / resvg | 15 进 / 20 出 |
| JPEG XL | libjxl | 11 进 / 11 出 |
| 数据文件 | Dasel | 5 进 / 4 出 |
| LaTeX | XeLaTeX | 1 进 / 1 出 |
支持同时上传多个文件、批量转换,浏览器里直接打包下载。
内置多账户注册(可关闭公共注册)、JWT 认证,可为每个转换任务设置密码保护,输出结果只有知道密码的人才能下载。
AUTO_DELETE_EVERY_N_HOURS 环境变量控制自动清理频率,防止服务器被上传文件填满。
ConvertX 的架构非常清晰,前后端均用 TypeScript 开发:
后端:Elysia(类 Express 但类型安全的 Bun 原生框架),REST API 处理文件上传、任务调度、转换执行。SQLite 做数据持久化(conversion history + user accounts)。
前端:TypeScript SPA,TailwindCSS v4 做样式,Kitajs HTML 模板引擎,前后端同构。组件化结构清晰。
转换执行:每个转换器是独立的 TypeScript 模块,统一调用底层 CLI 工具(FFmpeg、LibreOffice 等),转换完成后直接返回文件。
部署:多阶段 Dockerfile,从 debian:testing-slim 出发,分阶段构建 dev → prerelease → release 镜像,镜像大小经过 badge 监控优化。支持 ARM64 + x64 双架构,GitHub Actions 自动构建并推送 ghcr.io 和 dockerhub。
| 指标 | 数值 |
|---|---|
| Stars | 19,031 |
| Forks | 1,084 |
| 贡献者 | 43 人 |
| 公开 Issues | 127 个 |
| 最近提交 | 2026-09-15(7天前) |
| 最新版本 | v0.18.0(2026-06-21) |
| 主要维护者 | C4illin(585 commits) |
Commit 活跃度高,最近一个月几乎每天都有提交,主要是依赖更新(Elysia 等)和新功能开发(custom branding、pdftops 等)。
生产级一行命令:
docker run -p 3000:3000 -v ./data:/app/data ghcr.io/c4illin/convertx
带环境变量(推荐设置 JWT_SECRET):
# docker-compose.yml
services:
convertx:
image: ghcr.io/c4illin/convertx
ports:
- "3000:3000"
environment:
- JWT_SECRET=你的长随机字符串
- ACCOUNT_REGISTRATION=true # 允许他人注册
volumes:
- ./data:/app/data
首次访问 http://localhost:3000 会要求注册第一个账户,之后即可开始转换。注意:不要将未配置好的实例暴露在公网,首个注册用户即为管理员。
优点:
局限:
ConvertX 填补了"自托管文件转换"这一细分场景的工具空白。类似的工具要么是在线服务(有隐私问题),要么只做单一格式(如 pdf2htmlx),没有像 ConvertX 这样把 23 个专业工具链整合成统一 Web 界面的方案。它代表了一种趋势:把专业工具平民化,让普通用户不需要命令行也能使用 FFmpeg、LibreOffice 等强大工具。