Speckle is data infrastructure for the AEC industry.
- 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 and more!
Give Speckle a try in no time by:
- for help, feature requests or just to hang with other speckle enthusiasts, check out our community forum!
- our tutorials portal is full of resources to get you started using Speckle
- reference on almost any end-user and developer functionality
This monorepo is the home of the Speckle v2 web packages:
packages/server
: the Server, a nodejs app. Core external dependencies are a Redis and Postgresql db.packages/frontend
: the Frontend, a static Vue app.packages/viewer
: a threejs extension that allows you to display 3D datapackages/objectloader
: a small js utility class that helps you stream an object and all its sub-components from the Speckle Server API.packages/preview-service
: generates object previews for Speckle Objects headlessly. This package is meant to be called on by the server.packages/webhook-service
: making external webhook callspackages/fileimport-service
: parsing and importing files
Make sure to also check and ⭐️ these other Speckle repositories:
speckle-sharp
: .NET tooling, connectors and interoperabilityspecklepy
: Python SDK 🐍speckle-excel
: Excel connectorspeckle-unity
: Unity 3D connectorspeckle-blender
: Blender connectorspeckle-unreal
: Unreal Engine Connectorspeckle-qgis
: QGIS connectodspeckle-powerbi
: PowerBi connector- and more connectors & tooling!
Have you checked our dev docs?
We have a detailed section on deploying a Speckle server. To get started developing locally, you can see the Local development environment page.
Please make sure you read the contribution guidelines for an overview of the best practices we try to follow.
When pushing commits to this repo, please follow the following guidelines:
- Install commitizen globally (
npm i -g commitizen
). - When ready to commit,
git cz
& follow the prompts. - Please use either
server
orfrontend
as the scope of your commit.
For any security vulnerabilities or concerns, please contact us directly at security[at]speckle.systems.
Unless otherwise described, the code in this repository is licensed under the Apache-2.0 License. Please note that some modules, extensions or code herein might be otherwise licensed. This is indicated either in the root of the containing folder under a different license file, or in the respective file's header. If you have any questions, don't hesitate to get in touch with us via email.