在建筑设计、工程施工领域,不同软件之间的数据互通一直是痛点。Rhino 的模型怎么导入 Revit?SketchUp 的修改如何同步给整个团队?今天介绍的 Speckle Server 正是为解决这些问题而生——它是一个面向 AEC(Architecture, Engineering, Construction)行业的开源 3D 数据协作平台。

项目概览

属性内容
GitHubspecklesystems/speckle-server
Stars783
语言TypeScript
特点3D 数据版本控制、多软件连接器、实时协作
最后更新4天前

它解决了什么问题

传统 AEC 工作流程中,设计师和工程师被困在各自软件孤岛里:

  • 模型文件庞大,邮件传输困难
  • 版本混乱,难以追踪修改历史
  • 各专业之间协调成本高
  • 软件格式互不支持,数据转换损失严重

Speckle 的思路很简单:把 3D 数据从本地文件解放出来,用类似 Git 的方式管理,同时提供 Web 端的 3D 查看器让所有人都能访问。

核心功能

1. 多软件连接器 支持 Rhino、Revit、SketchUp、Blender、AutoCAD、Civil 3D 等主流 AEC 软件。安装插件后,用户可以直接从软件内部将模型”推送”到 Speckle 服务器,其他软件的同事可以”拉取”并在本地继续编辑。

2. 版本控制与分支 借鉴 Git 的概念,Speckle 支持分支管理、提交历史、差异对比。这意味着你可以:

  • 保留设计方案的完整演进历史
  • 并行探索不同设计方向
  • 精确回滚到任意版本

3. Web 端 3D 查看器 基于 Three.js 构建的查看器支持浏览器端流畅浏览大型 3D 模型,无需安装任何软件。支持测量、剖切、属性查看,甚至可以嵌入到 Notion 或网页中分享。

4. API 与自动化 提供 GraphQL API 和 Webhook,支持与 CI/CD 流程、参数化设计脚本、数据仪表盘集成。可以用 Grasshopper 或 Python 读取 Speckle 数据,实现自动化分析和报表生成。

快速开始

Speckle 提供官方托管服务(免费额度足够个人和小团队使用),也可以自托管:

# 使用 Docker Compose 自托管
git clone https://github.com/specklesystems/speckle-server.git
cd speckle-server
docker-compose up -d

安装对应软件的连接器后,登录你的 Speckle 账户即可开始推送和拉取模型。

同类工具对比

工具Stars定位特点
Autodesk Platform Services-商业服务与 Autodesk 生态深度绑定
IFC.js1.2k开源库专注 IFC 格式解析,Web 查看
Speckle Server783开源平台多软件支持 + 版本控制 + 协作

相比商业方案,Speckle 的优势在于开放性和灵活性;相比纯解析库,它提供了完整的数据管理和协作能力。

适用场景

  • 跨专业的大型建筑项目协调
  • 需要版本控制的设计探索过程
  • 需要与外部团队共享模型但不想发送庞大文件
  • 参数化设计与自动化报表生成
  • 将 3D 数据集成到 Web 应用或数据看板

需要注意什么

  • 大型模型(百万级三角面以上)在 Web 查看器中的性能取决于客户端设备
  • 某些高级材质和自定义数据在软件间传输可能有兼容性问题
  • 自托管需要一定的服务器运维能力
  • 相比成熟商业方案,社区规模较小,遇到问题可能需要自己排查

总结

Speckle Server 是 AEC 领域少有的、真正理解行业需求的开源协作工具。它不试图取代现有设计软件,而是在它们之间搭建桥梁,同时引入现代软件开发的版本控制理念。如果你是建筑师、工程师,或者正在开发与 3D 建筑数据相关的应用,这个项目值得关注。


属性内容
仓库https://github.com/specklesystems/speckle-server
许可证Apache-2.0(核心组件)
语言TypeScript / Vue.js
维护者@specklesystems
官网https://speckle.systems