This is a neat idea and I quite like some of the syntax, but what is this for? I have a hard time seeing this gaining traction over traditional sketch-based CAD for a number of reasons, so is it just meant to be a toy?
One of the best things about openscad is the ability to immediately see the results of a code change in the 3D view (all I do is save the file with :w in neovim and openscad re-renders it). Being able to interact like this makes it much quicker and easier to iterate on a design.
I read through the ucad website and book for 10 minutes and haven't been able to figure out if there is an analogue to this for ucad?
There are several things that look neat about ucad's language, but I would need to recreate something like openscad's workflow to consider switching.
Tried openscad and then cadquery for some geometry iteration projects and found them clunky. It wasn't just that I was missing a UI; the functions, constraints and geometry kernel weren't as powerful as onshape, which I've used a bit, and presumably light years behind fusion 360, which I haven't used.
Even freecad, a UI-based oss cad, is not quite ergonomic for a beginner-to-intermediate user, though it has come a long way in the past few years.
I'm excited for there to eventually be a good open source cad option, whether language-only or language-plus-GUI, but am also increasingly on team 'tools matter for your productivity'.
As someone who has been using FreeCAD starting in 2020, I can't tell any major differences. The problems are the same they have ever been. It's only the renderer that got a little bit more "sexy", but that is just looks.
This does not seem to have a constraint solver or any documented plans to integrate one. I love math, but I don’t enjoy maintaining walls of trig to make trivial constraints parametric.
I've been using zoo and its KCL language with some success for boundary-representation CAD writing. If I understood correctly, µcad serves the same purpose. Comparing code samples between both of them, I personally enjoy KCL's pipelined approach more.
My main beef with zoo is the fact that they are promoting vendor lock-in by forcing users to use their cloud-hosted geometry kernel with absolutely no local alternative. It's not clear to me how µcad solves this problem.
If you look hard enough almost any 4 way rotation symmetry will result in a variation of swastika like shape. You would have to almost completely ban 4 way rotation symmetry to avoid it.
I personally find it unhealthy to actively search, extend and strengthen the association of hate symbols based on vague similarity out of context. Sure remember the crimes they have done and avoid the exact specific shape, proportions, color commonly used by the hate groups, but also take context into account. Don't promote them by giving them credit for things they didn't do. Don't let the hate groups win by allowing few dozen years of years of activity destroy thousands of years of cultural and language history and future for wide category of symbols and simplest geometric patterns. Don't erase words from common language. Don't let them make your life worse by self inflicted excessive censorship. Grow the good associations not the bad ones, dilute and take away the strength from hate groups instead of letting them take away common language from you. If you look at thousand year old budhist or ancient greek stone carving which uses one of the few dozen swastika variations and think those time traveling Nazis plastering their symbols all over the place they win.
When looking at children playing with paper pinwheel, is your first thought also they must be Nazi? When you look at cardboard box with 4 flaps overlapped on top of each other do you think Nazi?
With regards to other people speculation how this happened I doubt they intentionally tried to create a swastika, it just happens naturally when you use rotational symmetry. Looking at this logo I personally see the overall cross and spinning shape formed by positive space first. The image of swastika formed by negative space is kind of weak and clunky due to thickness mismatch created by curved rhombus. If they had used 4 overlapping squares or circles it would be more problematic, at that point a logo designer would likely stop and try to mixup things to get rid of it.
Super fascinating project. I'm very interested in this. I truly hate using the tools by hand and as a programmer, this feels waaaay more intuitive. That said, when reviewing the gear video, I think understanding to start with the gear primitive would require giving the libraries a good once over as I wouldn't have assumed those existed.
Can imagine more and more forms being built in as the community goes.
I've been searching for a CAD language that supports iteration in a good way. I've been designing a self-build house and it occurs to me that, once I have the walls etc, filling in the details for the manufacture of those walls could be done by a programming routine. Such a routine could work out how many studs are needed and their placement etc and generate the kind of cut-throughs where you can see the construction inside the wall that you sometimes see in construction books. Anyway, without for-loops that kind of thing is really difficult and I've given up.
You should remove any reference to LEGO from the website and the examples. LEGO is extremely protective of its brand (similar to / worse than
Nintendo) and does not want third parties using its name, because it is concerned that LEGO could become a generic term which could put its trademark at risk.
So this is more an autocad equivalent? Does it have interfaces to enable reusability in some other file format (e.g. any way to get it into generic models eventually importable into revit?)
There is zero reason for you to have a cookie banner taking up a third of the page.
At this point, everyone making websites should be well aware that there is no requirement for cookie banners and that implementing such is active disrespect towards your users. Your cookie banner does not tell me you care about my privacy, it tells me you're trying to collect some type of data about me and want to annoy me into letting you sell that data.
A cookie banner is exactly as much a red flag as an obviously AI generated hero image at the top of your page. Disrespectful.
```
c = Sector(radius, start = 180°, end = 270°).translate(y = radius);
```
Programming language that requires (maybe it does not require, but then example is not good) to type degrees. Or maybe it is not designed to be typed and rather ai generated?
41 comments
[ 3.5 ms ] story [ 62.1 ms ] threadI read through the ucad website and book for 10 minutes and haven't been able to figure out if there is an analogue to this for ucad?
There are several things that look neat about ucad's language, but I would need to recreate something like openscad's workflow to consider switching.
they got a grant for that. i couldn't find an english version though, sorry.
https://www.prototypefund.de/projects/microcad-viewer
I'm not sure if it's on par with what you want, though.
Even freecad, a UI-based oss cad, is not quite ergonomic for a beginner-to-intermediate user, though it has come a long way in the past few years.
I'm excited for there to eventually be a good open source cad option, whether language-only or language-plus-GUI, but am also increasingly on team 'tools matter for your productivity'.
openscad in general is quite easy if you can functionally program
This site sucks. Why does it use php, and why is every link a query? Just make it a static page.
My main beef with zoo is the fact that they are promoting vendor lock-in by forcing users to use their cloud-hosted geometry kernel with absolutely no local alternative. It's not clear to me how µcad solves this problem.
[1] Lego brick in KCL: https://zoo.dev/docs/kcl-samples/lego
[2] Lego brick in µcad: https://microcad.xyz/index.php/2025/11/12/lego-bricks/
[3] Gear in KCL: https://zoo.dev/docs/kcl-samples/spur-gear
[4] Gear in µcad: https://microcad.xyz/index.php/2025/11/12/gears/
Gear in build123d: https://github.com/GarryBGoode/gggears
Although am I the only one to notice the swastika in their logo?
I personally find it unhealthy to actively search, extend and strengthen the association of hate symbols based on vague similarity out of context. Sure remember the crimes they have done and avoid the exact specific shape, proportions, color commonly used by the hate groups, but also take context into account. Don't promote them by giving them credit for things they didn't do. Don't let the hate groups win by allowing few dozen years of years of activity destroy thousands of years of cultural and language history and future for wide category of symbols and simplest geometric patterns. Don't erase words from common language. Don't let them make your life worse by self inflicted excessive censorship. Grow the good associations not the bad ones, dilute and take away the strength from hate groups instead of letting them take away common language from you. If you look at thousand year old budhist or ancient greek stone carving which uses one of the few dozen swastika variations and think those time traveling Nazis plastering their symbols all over the place they win.
When looking at children playing with paper pinwheel, is your first thought also they must be Nazi? When you look at cardboard box with 4 flaps overlapped on top of each other do you think Nazi?
With regards to other people speculation how this happened I doubt they intentionally tried to create a swastika, it just happens naturally when you use rotational symmetry. Looking at this logo I personally see the overall cross and spinning shape formed by positive space first. The image of swastika formed by negative space is kind of weak and clunky due to thickness mismatch created by curved rhombus. If they had used 4 overlapping squares or circles it would be more problematic, at that point a logo designer would likely stop and try to mixup things to get rid of it.
Can imagine more and more forms being built in as the community goes.
kudos!
See: "Lego sues Dutch firm over anti-terror blocks using name and shape" https://www.thetimes.com/world/europe/article/lego-sues-dutc... ( http://archive.today/q5XrX )
(as https://machineblocks.com/docs/scad-crash-course-101 does)
At this point, everyone making websites should be well aware that there is no requirement for cookie banners and that implementing such is active disrespect towards your users. Your cookie banner does not tell me you care about my privacy, it tells me you're trying to collect some type of data about me and want to annoy me into letting you sell that data.
A cookie banner is exactly as much a red flag as an obviously AI generated hero image at the top of your page. Disrespectful.
Putting it here in case anyone is curious: https://github.com/tasn/scadjs
``` c = Sector(radius, start = 180°, end = 270°).translate(y = radius); ```
Programming language that requires (maybe it does not require, but then example is not good) to type degrees. Or maybe it is not designed to be typed and rather ai generated?