一、开源公告
我们正式宣布:
🔥 BaseMetas Fileview 前端 + 后端源码全部开放
🔥 Apache-2.0 协议
🔥 企业级架构
🔥 支持全格式扩展
GitHub 主仓库:
👉 github.com/BaseMetas/f…
这是一套真正面向工程落地的在线文件预览引擎,不是 Demo,而是一套可二次开发、可商用的文件预览基础设施平台。
二、它是什么?
BaseMetas Fileview 是一套通用型在线文件预览解决方案,采用前后端分离架构:
- 前端:多格式渲染引擎集合
- 后端:异步转换与任务调度系统
- 架构:Preview + Convert 双服务 + MQ 解耦
支持的文件格式(持续扩展中)
| 类别 | 格式 |
|---|---|
| Office | Word、Excel、PPT |
| 文档 | PDF、OFD |
| 设计图纸 | CAD、DXF |
| 3D 模型 | 主流 3D 格式 |
| 电子书 | EPUB |
| 轻量标记 | Markdown |
| 思维导图 | Xmind、Mind 系列 |
| 流程图 | BPMN、Drawio |
| 多媒体 | 图片、视频 |
| 压缩包 | ZIP、RAR 等 |
| 表格数据 | CSV |
| 代码文件 | 支持高亮显示(多种语言) |
它不是一个 Demo 项目,而是一套可扩展、可二次开发、可商用的文件预览基础设施平台。
三、核心架构理念
Fileview 的设计思想非常清晰,旨在解决企业级文件预览的复杂性与扩展性难题。
1. 预览与转换彻底解耦
- Preview 服务:只负责调度与状态管理,不参与重型格式转换。
- Convert 服务:专职执行各种格式的转换任务,可独立部署、水平扩展。
2. 消息驱动架构(RocketMQ)
通过消息队列实现异步处理,流程如下:
- 文件上传/下载完成 → 发送转换事件
- Convert 服务消费事件,执行格式转换
- 转换完成 → 写入缓存(Redis / 本地)
- 前端通过长轮询获取结果
这种设计避免了阻塞调用,大幅提高了系统吞吐量和稳定性。
3. 前端渲染引擎化设计
前端不是简单的 iframe 嵌套,而是整合了数十种优秀的开源渲染库,统一封装为可扩展的格式平台:
- PDF.js(PDF)
- epub.js(EPUB)
- bpmn-js(BPMN)
- Three.js(3D)
- Luckysheet(Excel)
- Mind Elixir(思维导图)
- Highlight.js(代码高亮)
- KaTeX(数学公式)
每个格式都是一个独立的渲染器,通过统一的接口接入,便于后期扩展新格式。
四、为什么选择开源?
在企业实际场景中,文件预览往往面临以下痛点:
- 依赖第三方 SaaS 服务,数据安全不可控
- 闭源架构,难以根据业务扩展
- 性能瓶颈无法自主调优
- 私有化部署支持不完善
BaseMetas Fileview 的开源目标很明确:构建一个真正可持续演进的文件预览底层能力平台。
它可以成为:
- 企业文档中心的核心组件
- OA / ERP 系统的预览内核
- 网盘系统的渲染底座
- 政务系统的文档引擎
五、开源不是发布代码,而是建立社区
我们希望 Fileview 成为一个长期演进的项目,真诚欢迎各类开发者参与共建:
- Java 后端开发者
- 前端工程师(React / TypeScript)
- 文件格式解析专家
- CAD / 3D 方向工程师
- 性能优化专家
- DevOps 工程师
- 文档贡献者
🛠 如何参与贡献?
参与方式非常简单:
- Fork 仓库
- Clone 项目到本地
- 新建分支进行开发
- 提交 Pull Request
项目采用前后端分离结构,你可以根据自己的兴趣选择方向:
fileview-frontend:React + TypeScript + Vite,负责渲染引擎与 UIfileview-backend:Spring Boot 全家桶,包含 preview 和 convert 两个模块
六、我们特别欢迎以下方向的贡献
| 方向 | 具体内容 |
|---|---|
| 🚀 新文件格式支持 | 接入新的 CAD、3D、文档解析器,扩展格式覆盖面 |
| ⚡ 性能优化 | 转换引擎调优、缓存策略优化、异步队列优化 |
| 🔌 存储适配 | 对接 OSS、S3、MinIO、企业网盘等 |
| 📊 可观测性增强 | 性能指标、转换链路监控、日志结构化 |
| 📚 文档与教程 | 使用示例、架构图、最佳实践、集成案例 |
七、长期愿景
我们希望 Fileview 能够:
- 成为国产文件预览基础组件
- 成为企业系统的默认能力模块
- 构建完整的插件生态
- 形成多格式扩展体系
这不仅仅是一个项目,更是一项基础设施方向。
八、开源协议
项目遵循 Apache License 2.0,这意味着:
- ✅ 可商用
- ✅ 可闭源集成
- ✅ 可二次开发
- ✅ 可自由修改
非常适合企业级落地。
九、结语
如果你正在:
- 做企业文档系统
- 做在线协同平台
- 想构建完整的文件预览能力
- 想参与一个真正有工程价值的开源项目
欢迎加入我们!
GitHub 仓库:
👉 github.com/BaseMetas/f…
欢迎:
⭐ Star
🍴 Fork
🧠 Issue
🚀 PR
让我们一起,把“在线文件预览”这件事做到真正工程级!