This project improves on SolveSpace, but it does this by requiring dozens of mutually conflicting libraries. I create CAD videos, but for my students I decided against this project after seeing how difficult it was to compile.
A FlatPak installer might help with this installation issue.
Again, the Windows executable gets around these issues, for people still willing to put up with Windows.
export GDK_DEBUG="gl-prefer-gl"
I discovered this while trying out the compiled version (it's essential for the program to run at all), and for some reason I thought the FlatPak install would have done away with this oddity.
Again, because my students aren't necessarily techies, this kind of hacking shouldn't exist in a program released to mere mortals.
But thanks again for alerting me to this release version.
There was a recent video on it:
https://www.youtube.com/watch?v=T1VNpC0nwF4
If someone knows of a general introduction to 3D CAD which focuses on vendor-neutral descriptions of terminology and concepts, I'd be very interested --- I've done the tutorial for Dune 3D twice now (which is farther than I've gotten in any other 3D CAD tool), but keep getting hung up on subtleties/specifics which I have trouble describing for want of the correct terminology/understanding:
https://github.com/dune3d/dune3d/discussions/118
When I tried to write up the usage of a far simpler program, one of the things which I tried to do was define all terminology as it was brought up:
https://willadams.gitbook.io/design-into-3d/2d-drawing
are there any tutorials for 3D CAD which attempt definitions along the way in this fashion?
I've successfully learned quite a few EDA and 3D CAD tools that way. It's also effectively the way it's taught in a classroom - the teacher shows you and you copy.
Another is:
https://www.youtube.com/watch?v=nsOHTD1RYBY
I wish the person doing:
https://ocw.mit.edu/courses/res-16-002-how-to-cad-almost-any...
would revisit that course w/ Dune 3D.
I'm not sure there is such a thing. Maybe a drafting book would be a vendor neutral description of spec'ing a 3D manufacturable object on a 2D surface.
Otherwise the way the software accomplishes the task is kinda the point which will necessarily have methodology specific terms in it.
0: https://docs.dune3d.org/en/latest/why-another-3d-cad.html
Solvespace 3.2 is essentially done (try the latest edge build), we just need to get github to produce the correct artifacts (not sure what broke). After that we will be adding named parameters to be used in sketches, and I'll try to get back to the chamfer/fillet problem and NURBS issues.
That's actually how it works. Chamfers and fillets are handled by OpenCascade, so they can be applied to arbitrary edges. They only exist on the solid model though, so they are not integrated with the solver.
I'd be curious to see how native chamfers/fillets in solvespace would work, I imagine some amazing things could be done if they'd be part of the solver.
SolveSpace is a PITA in that regard. You also need to re-learn most terms that are common in other CAD software. It's a typical OSS thing.
Why care about professional users that have years of learning invested into an ecosystem of professional CAD software (including terminology)? Because these people will get you the most valuable feedback if you can get them to even play with your OSS CAD thingy.
AI has now balanced the scores here. Someone with decent CAD experience can now instruct a model to build something useful.
Based on lots of good libs out there that solve the basics. I.e. concentrate on UI/UX to build something better.
It's like Lego, hands-free. You have all the blocks and you have someone who knows how/helps you combine them.
If you have good taste, you can get nice results without understanding how the Legos where made or how to even combine them.
I don't think that every oss should try the copy what already exists. The best is when new approaches are tried. The same happened to me when I started using tilling window managers. "Professional" Operating systems don't have that, but I am sure that if more people would try them, many would realize that the workflow fits them better. So, my point is that there is no single best solution in terms of user interface or interaction with a program, and the fact that many people explore and share different approaches with their open source software is something I really appreciate.
1.2 https://news.ycombinator.com/item?id=41975958
1.1 https://news.ycombinator.com/item?id=40228068
1.0 https://news.ycombinator.com/item?id=37979758
(unfortunately, no discussion for 1.3, so I guess this stands in for 1.4)
I really like the space-key based command access and default shortcuts for all the commands.
In case anyone is wondering, Dune3D as a flatpak is about 33mb. FreeCAD is 354mb. I enjoy having simple solutions that get simple things done. Will definitely give Dune3D a try.
Source: I am one of the contributors.
For years I agreed with you - I tried FreeCAD multiple times, different versions, always sucked.
Then I watched this video [0] and discovered that v1.1 is different - and that it's good enough for solid reliable hobby usage. It's still a touch frustrating in a few areas (text, for example) but I've now switched over to it completely.
You can make it work. You can also save yourself a lot of headache by using other CAD tools. Personally I value "Freedom" so I will continue to use it despite the difficulties but that may not be the right path for others.
Even selecting things in the UI has sucked. I went in and increased the selection radius or whatever, that helped. But really, should I need to do this as a new user?
Getting the constraints to behave is like pulling teeth.
It also kind of sucks that you have to have really sparse sketches that only contain one closed figure. I gather you can create a "master sketch" and selectively project geometry into other sketches. But the last few times I've tried the app, I haven't gotten far enough into my sketches before rage quitting to validate the technique.
Right now I am back F360 with their hobby license wanting to escape their regular messing with the terms and conditions.
Agree - selection isn’t broken, but it’s definitely sometimes frustrating and as it’s such a common function, absolutely should be as close to perfect as possible. I think it’s partly that the visual indication of what you’re hovering over and would be selected is too subtle, and also I’ve found (on Mac; I’ve not confirmed on other OSs) that it’s not selecting what’s at the exact tip of the pointer, but is rather selecting a couple of pixels away.
> Getting the constraints to behave is like pulling teeth.
Huh, once I’ve actually selected correctly, I find the constraints are fine - say, 95% as good as Solidworks.
> It also kind of sucks that you have to have really sparse sketches that only contain one closed figure.
Can you explain what you mean by this? Do you mean you can’t have a sketch with (to take a very simple example) a circle inside a circle, or two unrelated circles, or something else?
Oh, and if the selection point isn't at the pointer point? That's just a bug, and needs to be fixed. I can't see any defending that.
Curious what folks think of MOI3D (and if there is any other similar CAD tool other than maybe Shapr3D).
(1) agile Product Management,
(2) Product Design & continuous user-research,
(3) Improvements to test-driven development (TDD),
(4) transparent & open outcome-based roadmap,
(5) a vision to make the application easy to use for newbies in a maker-space, and (this is specific to my use-case),
(6) Improvements to the CAM module to make it easy to use this for CNC routers, and designing objects with sloped/curved surfaces.
- FreeCAD site: https://www.freecad.org/
- FreeCAD code: https://github.com/FreeCAD/FreeCAD
- FreeCAD forum: https://forum.freecad.org/
To echo others' comments: FreeCAD has improved significantly since v1.0, so I'm hoping this attracts quality & stability-minded develeopers, and a frequent release cadence.
Ofc. Let's reinvent the wheel, b/c improving the existing SW would be "too much effort", and btw NIH.
Doofus.
Well the readme states the following:
Solvespace on the other hand gets the workflow part right, but falls short by not importing STEP and the geometry kernel not supporting chamfers and fillets.
So I assume that's where that comes from.
Roughly every other week there is a new "The (programmable) CAD that fixes everything!" post on the front page, just for me to open them up excitedly and noticing that they use a mesh kernel and will thus never be able to provide fillets and chamfers painlessly (for the user). All while they are absolutely essential for a lot of designs, especially in 3D-printing, a well-placed fillet/chamfer can make the difference between an object that breaks upon looking at it funny and one that can bear significant load.
https://github.com/WillAdams/gcodepreview
Needs a full-on re-write to make the G-code export (and import) work well, but lately I've been focused on exporting to DXFs w/ colour/layer tagging which was just added as an import feature in the CAD tool my side-gig employer does.
Source: been there, done that.
Code-based
- CadQuery - https://github.com/CadQuery/cadquery/
- build123d - https://github.com/gumyr/build123d
- OpenSCAD - https://openscad.cloud/openscad/
GUI (browser-based)
- Cadmium (abandoned, cool idea) - https://mattferraro.dev/posts/cadmium
There's a lot more to do, but my feeling is the project is taking UI/UX design much more seriously than it has in the past, with the ramp-up of an internal design-focused team etc. I get that feeling from reading the weekly progress updates and MR discussions.
I'm very optimistic for the future of FreeCAD personally. I think it's a great time to contribute if you are interested in making UI/UX better as well because there's much higher interest in that kind of work now. I think it's close to having its own Blender/KiCAD moment.
Also all of the software mentioned above has very little UI/UX and also ambition compared to FreeCAD.
Yes they have some unconventional names for certain operations, like "pad" instead of "extrude", and yes there's a confusingly-similarly-named "Part" workbench for doing CSG-style CAD, and yes it takes a bit of practice to get good at it. But it's not next to impossible.
I don't like browser based and blender is too focused on animation (I'm more into 3D printing) so I haven't found a good FOSS alternative. FreeCAD isn't it anyway.
Plasticity for free form hard surface CAD modeling.
If you need parametric CAD then the learning curve jumps significantly and FreeCAD nowdays actually makes sense as with a bit of practice and customization you get to great place.
FreeCAD feels like Blender few years before v2.80 - people outright dismissed it because it had a bit unconventional UX but underneath was already the extremely solid software that now dominates 3D polygon modeling. FreeCAD doesn't have that much of a momentum but i wouldn't be surprised if they became Blender of CAD over time.
But yeah FreeCAD I just can't get my head around it right now.
The price is a lot lower than Fusion but still too high for hobby use IMO.
SolveSpace - https://github.com/solvespace/solvespace
guile scheme, bindings in Rust and Python
personally exited to check it out for real constructive-solid modeling, as opposed to emulating that workflow over OpenCascade's (fickle but otherwise lovely) BREP modeling (ie. edges & faces) via build123d (which has been great but is increasingly vibe-coded :/)
discussed previously: https://news.ycombinator.com/item?id=12319406
a real constructive solid library (as opposed to emulation via modeling), with
https://www.mattkeeter.com/projects/fidget/
https://github.com/mkeeter/fidget
there's even a parametric split-keyboard project (what i'm doing too)! the clearances and cutouts in julianschuler/concavum-customizer/.../keyboard/mod.rs[1] are so much like my static, single-file, build123d-based version in antlers/keyboard/.../main.rs[2] >u< (though i made the walls out of more layers, photo in README[3]). thx again for pointing me that way!
1: https://github.com/julianschuler/concavum-customizer/blob/ma...
2: https://codeberg.org/antlers/keyboard/src/branch/main/src/ca...
3: https://codeberg.org/antlers/keyboard
Awesome because you can build a model, expose the parameters, and allow web users to generate a model to fit their parameters.
OpenSCAD supposedly supports Python now (https://pythonscad.org/), but I was not able to get it to work at all. I've fallen back to just OpenSCAD, even though it has limitations, at least I'm familiar with them. I'm mostly just waiting for improvements to anything that'll make it better than OpenSCAD.
but i found-out up-thread that libfive, which i was esp. interested in for more reliable geom, has a Rust-based successor in Fidget -- and there's even a parametric split-keyboard that can be contrasted with my (static, hack-ier, but single-file) build123d iteration. exited to follow suit!
https://claude.ai/share/ebce7c8e-4e5a-42ec-8ee9-cf066f68858f
https://modelrift.com/models/customizable-liquid-funnel
It also seems to have a physics engine, a slicer for 3D printing, an embroidery mode, and a entire ecosystem of math crates (https://tang.toys/).
Whether any of that works – or whether it's pure LLM slop – is less clear. I tried to import a trivial STEP file, and it crashed my browser tab [1]. Every commit is co-authored by Claude.
[1] https://github.com/ecto/vcad/issues/7
(We had one back in December; you’re in for a fun ride!)
By the way, “they” is actually just one person: Cam Pedersen — https://campedersen.com
So far, he’s shown incredible productivity (with Claude Code). I integrated his vcad into my toy project here, and it worked on the first try, which is quite impressive for such a young project: https://github.com/darwin/supex/tree/dev
Definitely keep an eye on him.
> https://en.wikipedia.org/wiki/Template:CAD_software
distinguishes between 5 types of CAD software:
1. Mechanical
2. Architectural (AEC)
3. Electrical
4. Optical
5. Garment
Thus: KiCad is clearly a CAD application, though not of the Mechanical, but of the Electrical category (and is listed in the linked template as such).
https://arshon.com/blog/eda-vs-cad-decoding-the-basics-of-de...
And if we're appealing to Wikipedia as an (inconsistent) authority, https://en.wikipedia.org/wiki/Electronic_design_automation
"Electronic design automation (EDA), also referred to as electronic computer-aided design (ECAD),[1] is a category of software tools for designing electronic systems such as integrated circuits and printed circuit boards."
And
https://en.wikipedia.org/wiki/KiCad
"KiCad (/ˈkiːˌkæd/ KEE-kad[7]) is a free software suite for electronic design automation (EDA)."
But KiCad did put CAD in their own name so ¯\_(ツ)_/¯