Skip to content


The Open Source Data Platform for 3D.


Speckle - The Open Source Platform For 3D Data

Twitter Follow Community forum users website docs

Speckle makes 3D data work for both humans and machines.

Our whole world - from buildings to planes - is being built from 3D models carefully articulated and thought through by architects, designers and engineers. Just like software engineering projects, people collaborate to create things greater than the sum of their parts. We're here to provide an open source base for automation and collaboration.


  • Object-based: say goodbye to files! Speckle is the first object based platform for the AEC industry
  • Version control: Speckle is the Git & Hub for geometry and BIM data
  • Collaboration: share your designs collaborate with others
  • 3D Viewer: see your CAD and BIM models online, share and embed them anywhere
  • Interoperability: get your CAD and BIM models into other software without exporting or importing
  • Real time: get real time updates and notifications and changes
  • GraphQL API: get what you need anywhere you want it
  • Webhooks: the base for a automation and next-gen pipelines
  • Built for developers: we are building Speckle with developers in mind and got tools for every stack
  • Built for the AEC industry: Speckle connectors are plugins for the most common software used in the industry such as Revit, Rhino, Grasshopper, AutoCAD, Civil 3D, Excel, Unreal Engine, Unity, QGIS, Blender, ArchiCAD and more!


Principles & SDKs

Speckle is not a file based system - it's a versioned object graph storage for large 3D models, with multiple persistance layers. Read more about the core architecture here. What this means, in short, is that we decompose 3D data into their subconstituent atomic parts, hash them and store them in various places, such as databases, the Speckle Server, or the file system. We allow you to access this data in a linear fashion, suited for various processing tasks, or in a structured manner, suited for authoring applications and human understanding.


We take data out of design applications via a set of tightly integrated connectors that talk with the native APIs of the host application. Here are some of our connectors, at a glance:

The Speckle Server

Our primary storage layer is the Speckle Server - where Speckle's object decomposition is backed by access control, a querying api, a snazzy frontend and online 3D viewer, and more. Here are some of the components, at a glance:

  • Speckle Server: the Server, a nodejs app. Core external dependencies are a Redis and Postgresql db.
  • Speckle Frontend: the Frontend, a static Vue app.
  • 3D Viewer: a threejs extension that allows you to display 3D data
  • and more!

Community & Contributions

At Speckle, we're a bunch of slightly quirky humans with mixed backgrounds from architecture, engineering, and, thankfully, computer science. We engage with the wider Speckle Community on our forum, join us! We also host regular open office hours, all are welcome!


  1. .NET SDK, Schema and Connectors: Revit, Rhino, Grasshopper, Dynamo, ETABS, AutoCAD, Civil3D & more.

    C# 204 101

  2. The Speckle Server, Frontend, 3D Viewer, & other JS utilities.

    TypeScript 378 99

  3. Unreal Engine 4/5 plugin for importing objects from Speckle v2.

    C++ 39 10

  4. specklepy Public

    Python SDK 🐍

    Python 69 19

  5. AEC Interoperability for Unity through Speckle

    C# 41 16