Speckle.xyz - share Grasshopper 3d models online

Speckle lets you quickly share Grasshopper 3D models online with just one double click.

Developed by D/A/S, while working at The Bartlett, UCL Faculty of the Built Environment, within the InnoChain project.

Download from food4Rhino…

Author here. Happy to announce that speckle grew up a bit:

The big news:

  • Models are now limited to 20mb (untested).
  • The uploader component now accepts Breps and Surfaces as inputs (automagical meshing happening inside, so less hassle when you just want to share something quickly).

Online viewer:

  • The environment is resized to your model’s bounding sphere - so shadows should work everywhere, and things should display properly regardless of your unit settings.
  • If something goes wrong, there’s an error displayed instead of just the usual “arctic grey screen of death” that some of you might have gotten.
  • Wireframe is now Edges (shortcut key ‘e’), and displays less dense - makes for a better look.
  • You might have noticed a loading bar now keeps you informed about the model downloading and parsing progress - it’s a radical step forward to alleviate frustration (or increase it, if on slow connections).

Embedding in websites:

If you want to embed the models on your website - as you can see it’s done on speckle.xyz homepage - it’s really easy! A little “get embed code” button is planned, but until then you can follow these steps:

Take the link Speckle gives you, ie. http://speckle.xyz/view/15wyBk/, replace the view with embed, so it looks like this: http://speckle.xyz/embed/15wyBk/ and use this as the “src” for an iframe.

The final code you can paste in your website should look like this:

<iframe src="http://speckle.xyz/embed/15wyBk/“  height=“500” width=“500”>

Zooming won’t work in embed frames so you can actually still scroll the page down. TODO: will add zoom in and out buttons in the embedded viewer.

URL Hacking to toggle options:

You can toggle on or off some options, by appending to the speckle viewer link the following:

You can, of course, combine them (order is not important):


This will make sure the grid is on(g1), disable the ground plane(p0) and shadows (s0) and turn edge display off (e0). Works as well for embedded viewers.

Named Views:

Speckle exports together with your geometry, all the Named Views from that are defined in the Rhino document. Check the bottom option bar of this model: http://speckle.xyz/view/15wyBk/

You will see the named views defined from Rhino: Top, Flemish Theatre, StKatherine, Overview.

Clicking on them will bring up that specific view! Handy if you want to guide your collaborators/clients towards specific points of interest.

You can also enforce the model to directly load on a specific named view by appending to the url the “v”+view number (counting starts at 0). For example, let’s say I want to enforce the “Overview” view in the model linked above. It’s view number 4, and since counting starts from 0, that means i need to append v3 to the url.
Voila: http://speckle.xyz/view/15wyBk/v3.

Note: I understand this is a bit of a stupid way of doing things, especially if you’re not a geek. So it might change in the future…

Other news:

  • Code will be released in the public domain soon, hopefully (need to clarify with my current employer, UCL, all the ins and outs). Furthermore, I need to cleanup the server side application from hard coded server secrets and it should be yours.

  • Always looking to get feedback! Drop me a line with any requests/curses/questions. I don’t know how to stress the importance of this for me - i promise to give you a free cookie for every feedback email I get! -

  • Don’t forget to join the grasshopper group to stay in touch!