Following Fosdem and the opportunity to discuss with the team, I liked to share with you one proof of concept I worked on since I introduced Cloud workbench in FreeCAD. That module has the capacity to export FreeCAD native file format to an s3 compliant Cloud Object Storage server.
Instead of using Amazon s3, I have create a server in go which is storing the content to a minio microservice. As FreeCAD use open file format, the server is able to process the file (Document.xml and GuiDocument.xml) and parse it. When the transfer is done, FreeCAD run in server mode on the server backend and convert into OBJ format the transferred model. It is then available for web rendering and automatic display.
The actual feature of CADCloud are:
- User account creation / deletion
- 3D webgl rendering
- Direct save from FreeCAD to the web server using s3 protocol (credential available through the user account)
- Revision management (each time you save a file it will create a new revision)
I am working on adding
- Project Fork
- Object library management
The goal is to offer FreeCAD and KiCAD github like feature but by creating a full service platform which understand the physic and design workflow. I want see our end users working as a single community, but we need to offer them the relevant tool to do that.
I had some debate with myself about open sourcing such work and took the decision to release it under an MIT license on github. Yorik seems convinced by such project, as I am. You can have a look to a test website (try to avoid breaking it) on https://justyour.parts
. It is hosted in the US currently so it might be slow depending on where you are. Some model there are huge take your time and have a look. I think it can accept about 50 uers.
Otherwise the source code is available there:https://github.com/CADCloud/CADCloud
. Do not be shy and let's make enter FreeCAD in the next stage: collaboration ! I am open to accept any contribution.
I have met with so many people waiting for such services, that I have decided to create it. Hope this has some interest to you ! Have a look to the start script to build the PoC.