ShapeJS 2.0 launches

Shapeways releases version 2.0 of the ShapeJS language and development environment. ShapeJS is a language designed to make creating and sharing 3D printable objects easy. Based on Javascript, it provides a rich set of solid modeling primitives built on a powerful voxel engine. The combination enables control of 3D printed objects down to printer resolution levels and makes it easy to create web deployable creators.

This release adds many new features to the language and environment. Most important is the use of GPU’s to enable faster evaluation of scripts. Typical scripts are 100X faster than ShapeJS 1.0, and can be rendered in real time. The new renderer is server-based to protect the author’s content from being borrowed and reduce the client side requirements.

ShapeJS script

New Features

  • Real time evaluation using OpenCL
  • Image-based rendering
  • Lower client compute requirements
  • Protects author’s 3D content
  • Zip transmittal format for sharing objects and parameters
  • 2D operations for image manipulation
  • Revamped IDE
  • Better argument passing and description
  • Fast and accurate distance functions
  • Improved Automatic User Interface Creation
  • Blending of boolean operations for rounded edges
  • User provided font support


So what is ShapeJS and who in the Shapeways community will enjoy using this?

ShapeJS script

ShapeJS is targeted at the maker and designer communities that want to create 3D printable objects using code here at Shapeways. Based on voxels it can provide printer-level accuracy for amazingly complex designs. Using traditional triangle graphics requires a staggering number of triangles to gain that much control. By using voxels instead of triangle graphics, designers can leverage 2D images much easier in their designing process, which opens object creation to a much wider audience of 2D capable artists.  With a rich interface definition, ShapeJS scripts make it easy to share parametric objects with others. This allows your work to be widely reused and makes it easy for others to customize your object for their own situation.

ShapeJS design collage

Learning ShapeJS

In order to help teach ShapeJS 2.0 we’ve put together an extensive set of tutorials and example content.  These cover the major capabilities of ShapeJS and provide some ready to print examples to get you inspired.



We will also be producing a weekly blog post, starting next week, showcasing a new object or technique using ShapeJS every Tuesday for the next 12 weeks. Come back each week for the next installment of tutorials and inspiration!


ShapeJS 2.0 is not completely backwards compatible to 1.0: minor changes are necessary for most scripts. One significant feature, custom data sources, has been removed.

ShapeJS 1.0 servers will be decommissioned June 15, 2016.

We hope you are as excited as we are about the new release of ShapeJS. Try out the new site and check out the new examples and tutorials content weekly.  We welcome comments on the language mechanics, specifically around how it can be improved to speed development and any features you think it’s missing.

For more, watch my Shapeways Live conversation with Rebecca and Hunter.