pedropaulovc 4 hours ago

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.

[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/

  • fallat 3 hours ago

    Zoo has said it's open to local hosting of the kernel for years. I believe it's a matter of time because it's mostly about legal tape.

    ucad is based on Manifold, so unfortunately, not really comparable, since it's all meshes vs brep, like OpenSCAD.

    Note KCL could be completely augmented with another kernel. There are people who've already tried :)

awinter-py 5 hours ago

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'.

  • WillAdams 3 hours ago

    The great thing about OpenSCAD is that it makes it easy to programmatically model objects using cubes, cylinders, cones, and spheres by placing, stretching, and rotating them.

    The awful thing about OpenSCAD is that one's ability to model in it is strongly bounded by one's fluency with mathematics and ability to use math to programmatically model objects using cubes, cylinders, cones, and spheres by placing, stretching, and rotating them.

    The one tool I'm aware of which is looking at a new geometry kernel which I can recall is:

    https://fornjot.app/

  • nicman23 16 minutes ago

    freecad with the new ui + its openscad integration is pretty good.

    openscad in general is quite easy if you can functionally program

aclindsa 5 hours ago

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.

  • don-bright 5 hours ago

    That immediacy is mostly thanks to OpenCSG which is essentially a magic trick to quickly fake 3d rendering of booleans between 3d objects using stencil buffer of gpu. http://opencsg.org/

    In other words it renders the cylinders cubes spheres etc and their unions differences etc, to a 2d screen without actually calculating the intersection of those meshes / solids in 3d space.

    This is the special thing about OpenSCAD design is they figured out how to build an abstract syntax tree that could either be sent to OpenCSG, CGAL (old engine), Manifold (new engine), or even the bare bones 'ThrownTogether' renderer (ancient engine on machines with no gpu that just draws 'negatives' as green blobs iirc).

    It should be theoretically possible for any CAD program to do this. its just a lot of work.

    • beeflet 5 hours ago

      wow, this is really neat. I always noticed how, when panning around with ortho view, it didn't need to re-render

cyrusradfar 2 hours ago

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.

kudos!

deckar01 5 hours ago

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.

beeflet 5 hours ago

Interesting project, I will look into it.

This site sucks. Why does it use php, and why is every link a query? Just make it a static page.

  • swaits 3 hours ago

    PHP is fine. If the site sucks it’s not because of the language.

    • altmanaltman an hour ago

      yeah, a lot of frontend/styling choices are pretty non-asthetic other than the suboptimal performance.

  • jwilber 5 hours ago

    Yeah, my guess is the team vibe-coded it because wow is does it have poor performance /is difficult to use. A few links didn’t even work for me…

    • iammattmurphy 4 hours ago

      The server appears to be down right now too :/

    • teaearlgraycold 4 hours ago

      If so that means they asked the AI to use PHP. Which is even more horrifying.

theamk 6 hours ago

So.. OpenSCAD, but with strong types and rust-flavored syntax?

octoberfranklin 6 hours ago

So what is the big advantage of this over OpenSCAD?

  • beeflet 5 hours ago

    I found this:

    https://docs.microcad.xyz/language/book/intro/preface.html

    >While OpenSCAD is easy to learn and has a syntax reminiscent of C, we felt the language could be improved in several ways:

    > - more specialization for creating graphics,

    > - better support for modular programming,

    > - strict typing and unit handling,

    > - a syntax closer to Rust than to C,

    > - a solid library system,

    > - plugin support for other programming languages,

    > - and a more powerful visualization concept.

    • Surac 27 minutes ago

      I like openscad because it use a syntax more like c than rust. Making the syntax more c like opens the user base up. Not everyone sees rust syntax as a benefit. Just my 2 cents

cke 5 hours ago

This almost feels like going back to old school Autocad.

hekkle 3 hours ago

Looks like a promising alternative to OpenSCAD.

Although am I the only one to notice the swastika in their logo?

  • GaryBluto 2 hours ago

    > Although am I the only one to notice the swastika in their logo?

    Possibly. Although I know it's the wrong way round to be a Nazi swastika, it's made all the more odd by the fact that this is a German project.

actinium226 6 hours ago

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?

  • raddan 6 hours ago

    I would personally prefer to work with a language-based CAD than a strictly graphical one. Especially for parametric kinds of objects. Now that 3D printing is going mainstream, I am certain that new and interesting things are still to come in CAD.

    • krisoft 5 hours ago

      Curious. How much experience do you have with any form of CAD? Is the preference based on that you tried graphical CAD software and you found them lacking, or is it based on imagining how they might work?

      Last week at the hackspace someone asked me to quickly design a manifold which holds together a scuba mouth piece, a 48mm diameter valve and a nato 40mm screw fitting. They wanted to minimise the internal tidal volume of the manifold, while keeping enough clearance for the tubes connected to it. We ended up connecting the 3 fittings in a Y-shape and lofted the pipes together. Without seeing the resulting shape I can’t even start to guess how many edges it would have. And I have no idea how I would refer to which edges i want filleted. How would you approach something like that with your prefered method?

  • sho_hn 6 hours ago

    Hmm - are you familiar with OpenSCAD, which is highly popular? This would appear to compete there. There's a few others, e.g. CadQuery.

    • lovemenot 6 hours ago

      Such languages can be amenable to LLM generation, reducing barriers to entry.

      • jwagenet 5 hours ago

        The hard part with 3d part creation isn’t the graphical interface or language, it’s actually describing and translating part requirements to a manufacturable design, weighing material, weight, fit, geometric, and cost tradeoffs. Openscad, opencascade, etc have been around for a long time and have specs for describing features in a way that llm should be able to handle, but if all the part constraints were available it’s far faster to make accurately in Solidworks.

        • atrettel 4 hours ago

          This is my experience too. I took a course a long time ago in design for manufacturing, and it became abundantly clear that just because you can conceive of an idea doesn't mean that you can build it. That requires a lot more work and technical know-how that isn't always put into books or other "training data".

      • 2muchcoffeeman 5 hours ago

        I’ve tried getting Gemini to follow descriptions to generate a simple object in OpenScad.

        I finally got it to do what I wanted.

        But I’m much much faster and if didn’t have some amateur CAD experience, I don’t know I would have ever succeeded.

      • aclindsa 5 hours ago

        Just yesterday I had an LLM write an openscad module for generating a 2d rounded rectangle. It worked great! I then tried to get it to write a module to extrude a 2d shape into a 3d shape and it failed spectacularly several times before I gave up.

  • Normal_gaussian 6 hours ago

    I'm a much more capable of designing useful models by programming than I am in using CAD software. The way I think about the construction of models is much more suited to standard programming techniques. I freely admit there is probably immense value in using the industry standard tools instead... I've printed a few projects now which I used OpenSCAD to design, and it went fairly well, and I'm confident in them. OpenSCAD is a bit of a PITA though.

    I have no idea if this approach might gain traction over sketch-based CAD, I doubt it; yet this approach has a strong chance of expanding the space.

    • WillAdams 3 hours ago

      If there was a real possibility of folks being willing to use this sort of UI in industry, BRL-CAD would be far more popular, and writing AutoLISP scripts wouldn't be an obscure specialty.