• Stars
    star
    645
  • Rank 69,781 (Top 2 %)
  • Language
    TypeScript
  • License
    Other
  • Created over 4 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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


Speckle | Server

Server and Web packages

Speckle is data infrastructure for the AEC industry.


Twitter Follow Community forum users website docs

Speckle-Next codecov codecov

About Speckle

What is Speckle? Check our YouTube Video Views

Features

  • 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!

Try Speckle now!

Give Speckle a try in no time by:

  • speckle XYZ ⇒ creating an account at
  • create a droplet ⇒ deploying an instance in 1 click

Resources

  • Community forum users for help, feature requests or just to hang with other speckle enthusiasts, check out our community forum!
  • website our tutorials portal is full of resources to get you started using Speckle
  • docs reference on almost any end-user and developer functionality

Repo structure

This monorepo is the home of the Speckle v2 web packages:

Other repos

Make sure to also check and ⭐️ these other Speckle repositories:

Developing and Debugging

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.

TL;DR;

We're using yarn and its workspaces functionalities to manage the monorepo. Make sure you are using nodejs 16+. To get started, run:

$ corepack enable $ yarn $ yarn build

After this, you can use the scripts in the individual packages or run all in dev mode: $ yarn dev

For development you'll also want to run yarn dev:docker:up which will start up the docker containers you will need to be able to run the apps on your machine.

IDE

The suggested IDE for working in this repo is VSCode, because the repo has special configs to improve the DX there (auto-format & auto-lint, recommended extensions etc.).

This repository relies on VSCode multi-root workspaces, so for the best DX and proper formatting/linting make sure you open the project using the workspace.code-workspace file instead of just opening the folder in VSCode.

Proper TypeScript support

To get proper TS support in standard TS files as well as Vue files, we rely on the Volar VSCode extension - not Vetur! When you open the workspace for the very first time, VSCode should already prompt you to install this extension. The default Volar setup can be quite resource intensive, however, because there end up being standard TS Language Server instances running as well as Vue TS Language server instances. To resolve this issue we rely on Volar's Take Over Mode.

Essentially, ensure you have Volar enabled, and the built in TypeScript and JavaScript Language Features extension disabled (for this workspace)!

Useful containers

Maildev

We have a Maildev container available that you can use to see all e-mails sent out from the app. Make sure your server .env file is configured properly to use it:

EMAIL=true
EMAIL_FROM="[email protected]"
EMAIL_HOST="localhost"
EMAIL_PORT="1025"

The web portal is available at localhost:1080 and it's listening for mail on port 1025.

Contributing

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:

  • When ready to commit, run $ yarn cz & follow the prompts.

When committing to git, an automated script will run. This will check that your commit conforms to Speckle's guidelines.

  • To enable additional checks, you may wish to optionally install the following:
  • Please note that these additional checks will be run by Speckle's automated CI environment and non-conformances, if any, may prevent your Pull Request from being merged.
  • Please use the name of the package as the scope of your commit.
  • Note that ggshield requires you to register an account and then authorise with GitGuardian before it can be used: ggshield auth login

Security

For any security vulnerabilities or concerns, please contact us directly at security[at]speckle.systems.

License

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.

More Repositories

1

speckle-sharp

.NET SDK, Schema and Connectors: Revit, Rhino, Grasshopper, Dynamo, ETABS, AutoCAD, Civil3D & more.
C#
356
star
2

GrasshopperAsyncComponent

Jankless Grasshopper Components
C#
133
star
3

xUnitRevit

xUnit runner for Revit
C#
111
star
4

specklepy

Python SDK 🐍
Python
110
star
5

speckle-unreal

Unreal Engine 4/5 plugin for importing objects from Speckle v2.
C++
56
star
6

speckle-unity

AEC Interoperability for Unity through Speckle
C#
55
star
7

speckle-blender

Python
49
star
8

speckle-powerbi

TypeScript
35
star
9

speckle-qgis

QGIS Connector for Speckle 2.0
Python
34
star
10

speckle-powerbi-visuals

Custom Speckle visuals for PowerBI
TypeScript
28
star
11

speckle-aectech-masterclass

web app for comparing Speckle stream commits
Vue
27
star
12

speckle-docs

Documentation on everything Speckle
JavaScript
23
star
13

speckle-excel

Speckle connector for Excel
Vue
18
star
14

SpeckleHackathon-SpeckleReports

Retreat Hackathon: Automated carbon cost reports with real-time notifications
Vue
16
star
15

speckle-examples

All the Speckle examples in one place
Jupyter Notebook
16
star
16

speckle-sketchup

Ruby
15
star
17

tabular-view-vue

Simple table view for Speckle data based on Vue.
Vue
14
star
18

revit-dashboard

Cool Speckle Dashboard for Revit data
Vue
11
star
19

speckle-docs-OLD

Documentation on everything Speckle
JavaScript
11
star
20

SpeckleHackathon-ImgToPointCloud

Jupyter Notebook
10
star
21

speckle_automate_python_example

Example function written for Speckle Automate in python
Python
9
star
22

aec-tech-presentation

JavaScript
8
star
23

speckle-arcgis

ArcGIS Connector for Speckle 2.0
Python
8
star
24

SpeckleAutomateDotnetExample

Example Speckle automate function using the dotnet SDK
C#
7
star
25

sketchup-sqlite3

SketchUp compatible SQLite3 compiler library
C
7
star
26

speckle-sharp-connectors

Speckle Connectors V3
C#
7
star
27

speckle-sharp-sdk

The Speckle SDK/Core for V3
C#
7
star
28

webhooks-demo

Python
6
star
29

speckle-demo-app

Dev Guides: Vue.js App communicating with a Speckle Server
JavaScript
6
star
30

oneclick-c4d

Python
5
star
31

speckle_automate-urban-wind-simulation

Python
5
star
32

helm

Smarty
4
star
33

speckle_automate_jupyter_example

Jupyter Notebook
4
star
34

.github

The .github repo for Speckle
3
star
35

speckle-unity-vr

ShaderLab
3
star
36

speckle-automate-github-action

GitHub Action for creating Speckle Automate Functions
TypeScript
3
star
37

manager-feed

Feed for Speckle Manager
2
star
38

speckle-email-templates

MJML development environment for building e-mail templates
2
star
39

speckle-automate-github-composite-action

A GitHub Action to build, publish, and register a Docker Image as a Speckle Automate Function
2
star
40

github-actions

Home of all shared Github Actions and Workflows at Speckle
1
star
41

speckle_automate-basic_clash_demo

Python
1
star
42

specklepy_qt_ui

Python
1
star
43

CSiAPIPlayground

A very simple playground for testing CSi API functionality
C#
1
star
44

speckle-sharp-host-apis

Speckle generated apis for various Host Applications.
C#
1
star
45

BILT-Workshop-Demo-Function

Python
1
star
46

Regression-Testing

C#
1
star