Show HN: Chili3d – A open-source, browser-based 3D CAD application
117 comments
·June 10, 2025mdip
So ... like ... WOW.
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!
jasonthorsness
"by compiling OpenCascade (OCCT) to WebAssembly"
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.
immmmmm
I’m doing a bit of BREP for GIS and even in 2D with line segments only the problem is really non-trivial, a lot of edge (pun intended) cases to take care of. Type system helps enormously, so probably rust will be a win here (I think I saw a project along those lines).
That being said, for CAD (personal usage) I switched from Fusion 360 to Freecad 1.0 with almost no project and the latter is an order of magnitude faster.
ssl232
Agreed, FreeCAD 1.0 is finally almost usable and supports assemblies. My main issue with it is that the bill of materials tool was DOA but it’s fixed in the main branch. There are still lots of quirks but these can be learned in a few hours of using it.
seltzered_
Worth noting there's also a fork of FreeCAD (Astocad, made by a former Ondsel developer) with some UI enhancements: http://astocad.com/
abe_m
I think the corner cases are likely hard, but the fundamental mathematical representations of the 3D geometry haven't changed. If the licensing cost of Parasolid and ASICs is reasonable, there isn't really a commercial incentive to create something new from scratch. The current market trend is consolidation as Autodesk and Hexagon when on a buying spree and bought up a lot of CAD and CAM software.
OpenCASCADE used to be commercial, but they couldn't find enough customers to keep on and it got open sourced after a failed commercial existence.
inhumantsar
I wish more companies, especially university spinoffs, did this when they failed.
It seems so wasteful that poor marketing or leadership or whatever can lock useful innovations up for years while people better able to execute on them reverse engineer the work and/or wait for patents to expire.
shash
The corner cases are hard, but the basics shouldn't be. I'd normally expect several basic ones and a few good professional ones. But that's not what we see...
snarfy
We don't really have a lot of options as far as open source geometry kernels goes.
OpenCascade
CGAL
Is there anything else?
shash
There's whatever's inside BRL-CAD, and SolveSpace has its own too.
Not that there are all that many proprietary 3D kernels either - ACIS, Parasolid, and...?
actionfromafar
Does anyone use BRL-CAD for anything? It must be capable but I can find very little information and resources about.
amelius
Would love to read more about how these types of geometric problems are best approached.
phkahler
>> Would love to read more about how these types of geometric problems are best approached.
Probably the most accessible NURBS kernel to learn from is the one in Solvespace. The entire source for the core NURBS is about 6KLoC:
https://github.com/solvespace/solvespace/tree/master/src/srf
My favorite file in there is ratpoly.cpp
It doesn't handle higher order NURBS or use knots. It's just the basics, but there are a lot of geometric algorithms in there. We're still trying to get the bugs out of NURBS booleans, but the high level algorithm is sound.
BTW it can also be compiled for web but that is incomplete.
johncalvinyoung
Ugh, I wish I could read it but as I'm working in this space professionally reading GPLv3 code is... risky.
Been working in 2D with bezier implementation for our in-house CAD kernel. 3D parametric is limited at the moment, though.
rcarmo
Impressive, but I don't see any way to do constraints or sketches.
(I'm also a bit sad that this is a web app, but, alas, such is progress.)
SamBam
As someone who works in a school with Chromebooks, I love that web apps like this exist, especially if students will be able to export the files to a 3D printer. It greatly opens up the number of tools we can use to do fun things.
That said, also as a teacher and a parent, I worry that Chromebooks are making kids have no idea about the world of non-web-apps. (And file systems, etc. etc.)
I watch my kid create a poster: find an image online, copy & paste into an automatic background remover, c&p into an image editing program to remove the watermark, c&p into Canva for assembling with text etc.
Meanwhile I show her that I can do the whole thing on Pixelmator Pro (or Affinity or Photoshop) and she looks at me like I have three heads.
sirjaz
Chromebooks need to die, we need to get back to native apps. Look with Windows we have msix, with Linux we have flatpack, etc .. Storage is cheap, and our devices are powerful. Let's use that power
SamBam
It simplifies things for schools, because everything is easily managed, everything integrates with Google classroom, and the hardware is fungible, you can log into any one and have your files.
It doesn't train them how to use real computers, but that's not on the state standards so they don't care.
kennydude
For some users, they're perfect (not all - schools etc need Win/Linux/Mac). I have family members who should just have a Chromebook as all they do is browse the internet - copy and paste is a stretch for them!
thenthenthen
Let the kids make websites?!
I love web based software (minus the logins). This saves soooo much time in a teaching environment. Time that can me used for teaching ideas, approaches, rather than struggling with compatibility issues.
phkahler
For CAD you can run Solvespace on a chromebook. I'm not sure I want to promote it for use below high school, as the geometry failures and their workarounds are probably too icky for younger users. I want more polish for kids.
regularfry
I think a set of problems where you intentionally create failures and then work through solving them would be quite interesting for anyone learning geometry, beyond a certain point. Understanding exactly why the failures are failures, what about the geometry or the computation makes them fail, would help build an intuition for geometry and topology itself.
rcarmo
Solvespace is hardly polished enough for general use, though. I can use it, but I constantly struggle against the way it handles sketches.
xiange
The current version does not include this, but it will be available as parametric components in the future.
mft_
OFC this being HN people are jumping on the side comment about web apps.
BUT the more relevant and valuable point you made was about constraints and sketches.
And, related to this, true parametric design, which IMO is vital for a CAD package to be taken seriously.
the__alchemist
Yep! Would love to try this once he or she adds parametric. We need good-quality reasonably-priced software in this domain.
joeevans1000
Browsers can be just as powerful as 'native' apps. This is an example of that. Browser apps free the user from proprietary operating systems and their companies. Of course, Linux is a way around that. However, why not just write it once and let students and engineers the world over be able to share and open files easily?
UPDATE: On my newer laptop thius is faster than my native apps. And I was literally drawing shapes within 30 seconds of clicking on the link to this app. Compare that to the nightmare of all the other tools out there with registrations, email clutter, 2FA, and on and on. Oh, and cost in most cases!
UPDATE 2: I have no connection to this team other than having just seen a post online about this tool. I've been navigating the world of SketchUp/AutoCad/Revit recently so this of course is totally thrilling. Especially for what it means for the future.
gmueckl
This is just blatantly wrong. There are so many native resources that any serious 3D application requires access to that are blocked by browsers that this statement just isn't true and never will be.
abe_m
Out of curiosity, what native resources are needed? It seems Solidworks mainly needs access to the file system, GPU, and perhaps networking. GPU and networking in the browser, and the file handling could be implemented over the network instead of locally.
For most current pro CAD, certainly there are a lot of calls to Win32 libraries on Windows, but those aren't fundamentally needed by a CAD system. There was professional 3D CAD before Windows.
I don't know what native hardware would be needed that isn't already accessible through current Chrome?
joeevans1000
That's why I said 'can'. Once OS's lift restrictions on what browsers can access then we'll finally have something more close to 'write once run everywhere'. But that wouldn't really help the proprietary software systems and companies.
tmjdev
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.
Prime_Axiom
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.
syntaxing
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.
piyush_soni
Onshape employee here. I agree with another poster that for most "non-professional" requirements Onshape's free tier is all one should need - sure, the documents remain public if you don't pay. It's prohibitively expensive to maintain the technology stack with the complexity, scale and performance that Onshape does, and its costs a lot of money. :)
syntaxing
Documents being public is one thing. But I remember you guys changed the ToS at one point (I just looked it up, in 2016) where the verbiage is that Onshape owns the IP of these documents which is a huge no for me. I rather pay for solidworks hobbyist for $100 a year that comes with 3Dexperience which performs very similar to Onshape.
the__alchemist
You can get SolidWorks for $25/year if you're a student or vet. It's full up re functionality, but with a non-commercial license. I highly recommend.
irrenhaus
Taking the chance: As a hobbyist with a decent CNC with no intent of using it for commercial work: Linux "support" was driving me from Fusion to Onshape. CAM is driving me back to Fusion.
Please consider pushing the idea of having CAM for the hobbyist level in Onshape in your company, I know there's not much in revenue us hobbyists, but I'd gladly pay up to 20-50 per month for such a license. At least that's more money than 0 :).
piyush_soni
I'm sorry, as far as I know the leadership is pretty clear on that. For a foreseeable future CAM will remain a Pro only feature.
Mashimo
I gravitate to open source, native or self hosted applications. But I have to say that onshape is really neat.
I just do relative simple object for 3D printing, every few month. And onshape was easy to get into.
From BRIO connectors for my nephews wooden train set, book binding helpers for a coworker, case for LED controllers .. easy peasy.
Just fill pattern and text are always a struggle.
But I just know, at some point Onshape will start charging us freeriders.
piyush_soni
> But I just know, at some point Onshape will start charging us freeriders.
- I don't know about that, may be, may be not, but I don't know of any such plan in the short term at least. It gives University students a free 'professional' license so there's that too.
> Just fill pattern and text are always a struggle.
Feel free to create a support ticket about your pain points. Everyone can easily do that, and Onshape is surprisingly more responsive to support tickets than many other companies.
zokier
otoh onshape free tier feels very generous to me.
tapia
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.
infogulch
CADmium is built with the Truck kernel, though it looks like CADmium has no repo activity since June '24. https://github.com/CADmium-Co/CADmium
There's also the Fornjot kernel. https://github.com/hannobraun/Fornjot
ttouch
Cadmium is long dead and unfortunately neither truck nor fornjot are "there" yet - "there" been anything more complex than a cube
Context: I was the main contributor/maintainer of cadmium
infogulch
Thanks for clarifying cadmium's status and offering your take on the state of truck and fornjot. So, what happened with cadmium? Is Truck just too primitive to build on top of so far? It looks like both of these kernels are actively being developed, what do you think of their rate of progress?
MaKey
> This looks super nice! That is kind of the interface I wish FreeCAD could have.
What do you dislike about FreeCAD's interface?
tapia
I think that the tools are not will organized, and I always have problems finding the tool I need in the menu. The concept of having different workbenches does not work good for me, as often I am looking for a tool and then realize I am in the wrong workbench. But it is not always clear why something is in a workbench and not in the other, and there are duplicated functions in some workbenches. Also, the fact that it does not support Wayland makes everything look blurry in hdpi screens. I like that it has a good python API though, but the documentation is a bit lacking. However, the different workbenches also sometimes complicate the use of the Python API. I like e.g. how build123d works.
mclau157
FreeCAD interface needs to take a lot of pointers from paid CAD programs, this Chili3D interface is quite close, larger icons in ribbons at the top of the screen with clear definitions
regularfry
There's an active knee-jerk hostility in the FreeCAD community to any user problem that even hints that it might involve a comparison to proprietary CAD. I've had "FreeCAD isn't Fusion and you shouldn't expect it to behave the same way" thrown at me when I've been discussing something bone-headed FreeCAD was doing.
I've never used Fusion, in any incarnation.
null
boznz
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.
nicr_22
Might be worth getting in contact with the Slant3D folks, their teleport 3d printing service might benefit from an integrated editor?
Sheol27
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 !
jlarocco
There doesn't seem to be any PMI, annotations, or views of any kind?
xiange
Yes, these functions are not available yet.
dvh
This dialog is untranslated in english version: 选择 确定 取消
xiange
Oh, thanks! I will revise the translation.
jvojak
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?
I'm currently developing Chili3D, an open-source, browser-based 3D CAD application. By compiling OpenCascade to WebAssembly and integrating Three.js, Chili3D delivers near-native performance for powerful online modeling, editing, and rendering—all without local installation. Access it here:
https://github.com/xiangechen/chili3d
Features:
Modeling Tools: Create basic shapes (boxes, cylinders, cones, etc.), 2D sketches (lines, arcs, circles, etc.), and perform advanced operations (boolean operations, extrusion, revolution, etc.).
Snapping and Tracking: Precisely snap to geometric features, workplanes, and track axes for accurate alignment.
Editing Tools: Modify (chamfer, fillet, trim, etc.), transform (move, rotate, mirror), and perform advanced edits (feature removal, sub-shape manipulation).
Measurement Tools: Measure angles and lengths, and calculate sums of length, area, and volume.
Document Management: Create, open, and save documents, with full undo/redo history and support for importing/exporting STEP, IGES, BREP formats.
User Interface: Office-style interface with contextual command organization, hierarchical assembly management, dynamic workplanes, and 3D viewport controls.
Multi-Language Support: Built-in i18n support with current languages including Chinese and English.