开源 | BaseMetas Fileview:企业级全格式在线文件预览引擎

0 阅读4分钟

 一、开源公告

我们正式宣布:

🔥 BaseMetas Fileview 前端 + 后端源码全部开放
🔥 Apache-2.0 协议
🔥 企业级架构
🔥 支持全格式扩展

GitHub 主仓库:
👉 github.com/BaseMetas/f…

这是一套真正面向工程落地的在线文件预览引擎,不是 Demo,而是一套可二次开发、可商用的文件预览基础设施平台。

二、它是什么?

BaseMetas Fileview 是一套通用型在线文件预览解决方案,采用前后端分离架构:

  • 前端:多格式渲染引擎集合
  • 后端:异步转换与任务调度系统
  • 架构:Preview + Convert 双服务 + MQ 解耦

支持的文件格式(持续扩展中)

类别格式
OfficeWord、Excel、PPT
文档PDF、OFD
设计图纸CAD、DXF
3D 模型主流 3D 格式
电子书EPUB
轻量标记Markdown
思维导图Xmind、Mind 系列
流程图BPMN、Drawio
多媒体图片、视频
压缩包ZIP、RAR 等
表格数据CSV
代码文件支持高亮显示(多种语言)

它不是一个 Demo 项目,而是一套可扩展、可二次开发、可商用的文件预览基础设施平台

三、核心架构理念

Fileview 的设计思想非常清晰,旨在解决企业级文件预览的复杂性与扩展性难题。

1. 预览与转换彻底解耦

  • Preview 服务:只负责调度与状态管理,不参与重型格式转换。
  • Convert 服务:专职执行各种格式的转换任务,可独立部署、水平扩展。

2. 消息驱动架构(RocketMQ)

通过消息队列实现异步处理,流程如下:

  1. 文件上传/下载完成 → 发送转换事件
  2. Convert 服务消费事件,执行格式转换
  3. 转换完成 → 写入缓存(Redis / 本地)
  4. 前端通过长轮询获取结果

这种设计避免了阻塞调用,大幅提高了系统吞吐量和稳定性。

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 工程师
  • 文档贡献者

🛠 如何参与贡献?

参与方式非常简单:

  1. Fork 仓库
  2. Clone 项目到本地
  3. 新建分支进行开发
  4. 提交 Pull Request

项目采用前后端分离结构,你可以根据自己的兴趣选择方向:

  • fileview-frontend:React + TypeScript + Vite,负责渲染引擎与 UI
  • fileview-backend:Spring Boot 全家桶,包含 preview 和 convert 两个模块

六、我们特别欢迎以下方向的贡献

方向具体内容
🚀 新文件格式支持接入新的 CAD、3D、文档解析器,扩展格式覆盖面
⚡ 性能优化转换引擎调优、缓存策略优化、异步队列优化
🔌 存储适配对接 OSS、S3、MinIO、企业网盘等
📊 可观测性增强性能指标、转换链路监控、日志结构化
📚 文档与教程使用示例、架构图、最佳实践、集成案例

七、长期愿景

我们希望 Fileview 能够:

  • 成为国产文件预览基础组件
  • 成为企业系统的默认能力模块
  • 构建完整的插件生态
  • 形成多格式扩展体系

这不仅仅是一个项目,更是一项基础设施方向。

八、开源协议

项目遵循 Apache License 2.0,这意味着:

  • ✅ 可商用
  • ✅ 可闭源集成
  • ✅ 可二次开发
  • ✅ 可自由修改

非常适合企业级落地。

九、结语

如果你正在:

  • 做企业文档系统
  • 做在线协同平台
  • 想构建完整的文件预览能力
  • 想参与一个真正有工程价值的开源项目

欢迎加入我们!

GitHub 仓库:
👉 github.com/BaseMetas/f…

欢迎:

⭐ Star
🍴 Fork
🧠 Issue
🚀 PR

让我们一起,把“在线文件预览”这件事做到真正工程级!