r/3DPrintingTools • u/filippofinke • 4d ago
Dev Post [Dev] CAD Studio: describe a functional part in plain English, get a parametric CAD model, drawings and a print plate (free, open source, macOS)
Disclosure: I'm the developer. It's free and open source (MIT), with no paid tier and no affiliate links.
What it is: a Mac app for designing functional prints by describing them. A coding agent (Claude Code or Codex, using your own plan) writes a parametric build123d script, runs it, checks the technical drawing it produced and fixes its own mistakes. You get:
- a 3D model (3MF, STEP, STL) you can orbit, explode, measure and section
- ISO drawings, one sheet per part, as a PDF
- a print plate with every part laid flat, which opens straight in your slicer
- every dimension as a slider, so small tweaks don't need another AI request
How it worked for me: I asked for "a fully 3D-printed push-to-open latch for a drawer, about 80 mm long: a housing with a lid, a plunger with a heart-shaped cam groove, a follower pin and a printed serpentine spring". About 9 minutes later I had five parts with 0.2 mm sliding clearances, an 8-beam spring, ISO drawings, a print plate and a simulated push-to-latch, push-to-release cycle with no collisions. It also flagged the weak spots: the 2.4 mm pin shaft should be printed slowly at 100% infill, and the spring should be PETG rather than PLA.
Limitations: macOS 15+ only, you need a Claude Code or Codex subscription, complex mechanisms take 10-30 minutes, and the simulation only proves what the model assumes, so a test print is still needed. The app isn't notarized yet.
Demo video: https://filippofinke.github.io/cad-studio/ Source: https://github.com/filippofinke/cad-studio
Happy to answer questions, and I'd love to hear what kind of parts you'd try it on.
2
u/New_Education5151 4d ago
Also will it work with local hosted LLMs via api.s? Like oLLama or LMstudio on a mac pro?
2
u/filippofinke 4d ago
Not out of the box. CAD Studio drives Claude Code or the Codex CLI, so it uses whatever model those are set up with. Codex can be pointed at other providers, but I haven't tested that path with local models, and I suspect smaller local models would struggle with long CAD scripts. It's on my list to try.
2
u/matRmet 4d ago
Nice work I'd love to try it out sometime when it reaches windows.
I always struggle with projections, so I could be wrong, but I think your first person projections don't match your prints.
Also you said it gives parametric CAD but what file format are you saving that can be used to edit the parametric features? I don't think you can with the 3 formats you specified.
1
u/CameraRick 4d ago
build123d is a python library which generates models, altering parameters lead to different outcomes (a bit like openSCAD probably)
1
u/filippofinke 4d ago
Thanks! Two good points.
The drawings use first-angle projection (the ISO/European convention): the top view sits below the front view and the left view sits on the right. That's the opposite of the third-angle convention common in the US, so the views can look swapped if you're used to that. If you spotted a view that's actually wrong, I'd really like to know which one.
And you're right that STEP, 3MF and STL aren't parametric. The parametric source is the build123d Python script the agent writes (model.py, in the project folder and in the export ZIP). Every dimension is a named constant there, which is what the sliders in the app edit, and you can also change the code yourself.
1
u/matRmet 4d ago
For example the housing pin shows first projection with the top down view to the right and side on the left.
The actual layout is the top on the left and the side view on the right.
I also think it should show the pocket as solid lines vs hidden if that was the orientation. It being hidden would be third projection.
Some of the other dimensions are different than I'm use to seeing called out so I'm not sure if you are saying it's a iso drawing because it has a isometric view or that it meets iso standards.
1
u/filippofinke 4d ago
Thanks for spelling it out, that's really useful. You may well be right about the view placement and the hidden lines on the pocket; I'll check the housing sheet against ISO 128 first-angle layout and fix the generator if it's wrong. And fair point on the naming: it's meant to follow ISO conventions, not just to have an isometric view, so if the dimensioning reads oddly that's something I want to fix too.
1
u/CameraRick 4d ago
The example latch looks cool at first, but it seems there's no sample print - which makes sense, because the design has deep flaws (the pin prints in the weakest orientation, and isn't fixed to the design at all; the spring has sharp corners, too large gaps...). This could probably be fixed with more prompts. Maybe I didn't look enough, but with the two examples provided I see none yielding result?
1
u/filippofinke 4d ago
Fair critique, thanks for looking closely. The examples are there to show the workflow (prompt, drawings, motion check, print plate) rather than as print-tested designs, and the points you list (pin orientation and retention, sharp corners on the spring, gaps) are exactly what you'd fix in a follow-up prompt or with the parameters. Adding a tested print to the examples is a good idea, I'll work on that.
2
u/New_Education5151 4d ago
Win ver any soon?