Open Toolchain Project - OCCI Web API for Sharing Parametric CAD Models

Here is an update on one of the projects funded by Open Toolchain Foundation, and done in collaboration with Mark van der Net (Archiyou) and Dave Cowden (creator of CadQuery). You may have seen this project mentioned during the presentation that @pieterhijma gave on Saturday during “The Future of Making.” Big thanks to the Open Toolchain Foundation for funding this project.

OCCI is a REST (Web) API that allows parametric CAD models to be shared easily. A user can access the API through a web browser or a client, such as the OCCI FreeCAD Workbench (essentially a plugin). The user can change the parameters and ask for a custom model to be generated. Attribution and license data are returned with the model data. Since showing is easier than telling, below is a quick video Mark created that shows the FreeCAD plugin being used to access the API. This is an MVP quality version, and so you will see one or two layout glitches in the user interface and the API database has some placeholder data in it.

As you can see from the video, there is a model of the Nimble leg that was added as an example, which is configurable for length and hole spacing. I believe that Mark is also hiring an intern to help add more general models to the repository collection since the amount and quality of the CAD models available will be important.

It’s all open source of course, and some useful links are below.

The API is capable of returning STEP files (the default for the FreeCAD workbench), but can also return STL if you request the model directly through a web browser. The plugin and the API can both handle long-running models in the background because some parametric models (or some of their configurations) can take a long time to run. The parametric models on the server currently use CadQuery as the model generation language, although that could be expanded to include others like OpenSCAD in the future. I think the challenge there is that generating a STEP file from OpenSCAD is a multi-step process that will most likely involve FreeCAD.

Anyway, if you would like to talk to me about this project at the Hackathon or here on the forum, I’ll be happy to.


Here’s the announcement I did about this workbench in the FreeCAD forum.