I read your description and thought, "some toy 3D project; probably slow/lacking features." I mean, you did a fine job but perhaps reading it in such a simple view made it lose something? Not a critique on you, just an observation of myself.
I've looked at it all of a few minutes and this is pretty fantastic. Quite fast, the UI seems relatively understandable coming from other tools. Looks as clean as the rest, anyway.
And I've been annoyed that there's not Fusion 360 available (supported, anyway) for OpenSUSE Tumbleweed ... you may have saved me some grief with this, so thanks for that!
I wondered what geometry kernel it was going to use! Interesting to me how few of these there are. Some of the solid modeling stuff is nearly 40 years old (parasolid) this must be hard.
Very impressive. Unsure what is going on with the tool icons, they're a bit strangely named. "Bessel", "pour corner" (twice), "From the cross section".
Looks like some work needs to be done to get this into familiar CAD terms with the English translation.
Difficult to use right now, it just switched into the Chinese translation when trying to make a cube and there doesn't appear to be an easy way to change that.
Nice work man, I always love seeing open source efforts especially in areas dominated by a few companies such as dassault and auto desk. On a somewhat related note, I’m excited for the nascent forays into context aware CAD using current llms.
Having used a few 3D CAD systems nothing is as good as solvespace. But when solvespace gets painful. It gets REALLY painful. I wish there was a serious dev team working on just solvespace.
This looks super nice! That is kind of the interface I wish FreeCAD could have. I am more the type of person who likes to use a python interface to create parametric models, but this is really cool!
Anyone knows what is the status of Truck [1] in this regard. Are they going to implement an open-source CAD program with their CAD-kernel? That also looks like a promising project.
Absolutely amazing. I've been hoping for something that is similar to OnShape. I would absolutely pay in the hundreds for something like this. Its an absolute shame how expensive Onshape licenses are. There's no way I'm shelling 1k+ for a license.
It looks pretty good and I encourage you to keep up the good work. you should also team up with a manufacturing or 3D printer company (like EasyEDA did for PCB production) and make it as simple as a few clicks to get your creation manufactured by casual users.
You did a great job! It looks promising, both for performance and UI. There are many tools in the 3D market which are unable to offer an intuitive and eye pleasing interface to work with.
Hope to see more projects like this one in the near future !
I have to say UI reminds me of the Microsoft products - but in a good way!
Compared to an average 3D CAD application, what do you think is different?
What was the reason behind developing such a tool?
This is a dumb question, but seems like as good a place as any to ask it:
I think of these CAD programs as being very old-school native programs that either are a loosely collected group of tools that allow you to manipulate files and pass them around (so, like, a bunch of Linux native programs that spit out files and ingest them, and you go around in the terminal to make sure everything is in the right spot), or a nice GUI around a bunch of those types of tools (it is definitely very possible that I’ve been influenced by only seeing these tools via engineering grad school where everything is open source, the gui’s don’t count, Linux command line is assumed, and 90’s tools are the baseline).
With a web-based system, what do you do? Like, for example if the user wants to pass models to some finite element simulation tool, do they just repeatedly download/simulate/go back to the website/edit/download/simulate, or something like that?
Is there a nice way for browser based apps to pipe to each other?
Two CAD other projects using OpenCascade worth checking out: Beegraphy and BitbyBit. Beegraphy uses the Rhino/Grasshopper modeling style and BitbyBit sticks with Cascade's ethos.
Just leaving this here — you are up to something. Karpathy:
> Products with extensive/rich UIs lots of sliders, switches, menus, with no scripting support, and built on opaque, custom, binary formats are ngmi in the era of heavy human+AI collaboration.
If an LLM can't read the underlying representations and manipulate them and all of the related settings via scripting, then it also can't co-pilot your product with existing professionals and it doesn't allow vibe coding for the 100X more aspiring prosumers.
Example high risk (binary objects/artifacts, no text DSL): every Adobe product, DAWs, CAD/3D
Example medium-high risk (already partially text scriptable): Blender, Unity
Example medium-low risk (mostly but not entirely text already, some automation/plugins ecosystem): Excel
Example low risk (already just all text, lucky!): IDEs like VS Code, Figma, Jupyter, Obsidian, ...
AIs will get better and better at human UIUX (Operator and friends), but I suspect the products that attempt to exclusively wait for this future without trying to meet the technology halfway where it is today are not going to have a good time.
Awesome, I literally just had this exact idea and started making a prototype with Cursor AI but gave up after about an hour going back and forth with AI not fixing bugs, or incorrectly implementing what I described. Fixing an issue, and then Cursor AI subsequently breaking it again.
Was going down the rabbit hole with TypeScript, React, and three.js.
Sometimes I wish they would put in the README just a brief description of which part of the stack they're responsible for and how they used it.
I see that it uses some type of WebAssembly technology and some CAD/CAM API that gets translated over. I also see they integrated with Three.js,
but what I would like to know is how much of the whole "thing" are they responsible for?
Are they responsible for all that code that draws the viewport and lets the user pan around? Are they responsible for that Microsoft Office ribbon UI? Are they responsible for the internationalization? What parts did they do? When I look at this, it's so sophisticated it just makes me feel think about the widening divide as far as AI skill gap goes. Was AI used?
Now they don't owe me that, of course, and that's nothing on them, kudos to them! It's a brilliant project.
Show HN: Chili3d – A open-source, browser-based 3D CAD application
396 points by xiange 10 June 2025 | 116 comments
Comments
I read your description and thought, "some toy 3D project; probably slow/lacking features." I mean, you did a fine job but perhaps reading it in such a simple view made it lose something? Not a critique on you, just an observation of myself.
I've looked at it all of a few minutes and this is pretty fantastic. Quite fast, the UI seems relatively understandable coming from other tools. Looks as clean as the rest, anyway.
And I've been annoyed that there's not Fusion 360 available (supported, anyway) for OpenSUSE Tumbleweed ... you may have saved me some grief with this, so thanks for that!
I wondered what geometry kernel it was going to use! Interesting to me how few of these there are. Some of the solid modeling stuff is nearly 40 years old (parasolid) this must be hard.
(I'm also a bit sad that this is a web app, but, alas, such is progress.)
Looks like some work needs to be done to get this into familiar CAD terms with the English translation.
Difficult to use right now, it just switched into the Chinese translation when trying to make a cube and there doesn't appear to be an easy way to change that.
Anyone knows what is the status of Truck [1] in this regard. Are they going to implement an open-source CAD program with their CAD-kernel? That also looks like a promising project.
[1] https://github.com/ricosjp/truck
Hope to see more projects like this one in the near future !
I was just thinking about how TinkerCad has block coding.
I think of these CAD programs as being very old-school native programs that either are a loosely collected group of tools that allow you to manipulate files and pass them around (so, like, a bunch of Linux native programs that spit out files and ingest them, and you go around in the terminal to make sure everything is in the right spot), or a nice GUI around a bunch of those types of tools (it is definitely very possible that I’ve been influenced by only seeing these tools via engineering grad school where everything is open source, the gui’s don’t count, Linux command line is assumed, and 90’s tools are the baseline).
With a web-based system, what do you do? Like, for example if the user wants to pass models to some finite element simulation tool, do they just repeatedly download/simulate/go back to the website/edit/download/simulate, or something like that?
Is there a nice way for browser based apps to pipe to each other?
> Products with extensive/rich UIs lots of sliders, switches, menus, with no scripting support, and built on opaque, custom, binary formats are ngmi in the era of heavy human+AI collaboration.
If an LLM can't read the underlying representations and manipulate them and all of the related settings via scripting, then it also can't co-pilot your product with existing professionals and it doesn't allow vibe coding for the 100X more aspiring prosumers.
Example high risk (binary objects/artifacts, no text DSL): every Adobe product, DAWs, CAD/3D Example medium-high risk (already partially text scriptable): Blender, Unity Example medium-low risk (mostly but not entirely text already, some automation/plugins ecosystem): Excel Example low risk (already just all text, lucky!): IDEs like VS Code, Figma, Jupyter, Obsidian, ...
AIs will get better and better at human UIUX (Operator and friends), but I suspect the products that attempt to exclusively wait for this future without trying to meet the technology halfway where it is today are not going to have a good time.
https://x.com/karpathy/status/1930354382106964079?s=61
Was going down the rabbit hole with TypeScript, React, and three.js.
I see that it uses some type of WebAssembly technology and some CAD/CAM API that gets translated over. I also see they integrated with Three.js,
but what I would like to know is how much of the whole "thing" are they responsible for?
Are they responsible for all that code that draws the viewport and lets the user pan around? Are they responsible for that Microsoft Office ribbon UI? Are they responsible for the internationalization? What parts did they do? When I look at this, it's so sophisticated it just makes me feel think about the widening divide as far as AI skill gap goes. Was AI used?
Now they don't owe me that, of course, and that's nothing on them, kudos to them! It's a brilliant project.