Show HN: Vibe Code your 3D Models

github.com

52 points by burrnii 3 days ago


Hi HN,

I’m the creator of SynapsCAD, an open-source desktop application I've been building that combines an OpenSCAD code editor, a real-time 3D viewport, and an AI assistant.

You can write OpenSCAD code, compile it directly to a 3D mesh, and use an LLM (OpenAI, Claude, Gemini, ...) to modify the code through natural language.

Demo video: https://www.youtube.com/watch?v=cN8a5UozS5Q

A bit about the architecture:

- It’s built entirely in Rust.

- The UI and 3D viewport are powered by Bevy 0.15 and egui.

- It uses a pure-Rust compilation pipeline (openscad-rs for parsing and csgrs for constructive solid geometry rendering) so there are no external tools or WASM required.

- Async AI network calls are handled by Tokio in the background to keep the Bevy render loop smooth.

Disclaimer: This is a very early prototype. The OpenSCAD parser/compiler doesn't support everything perfectly yet, so you will definitely hit some rough edges if you throw complex scripts at it.

I mostly just want to get this into the hands of people who tinker with CAD or Rust.

I'd be super happy for any feedback, architectural critiques, or bug reports—especially if you can drop specific OpenSCAD snippets that break the compiler in the GitHub issues!

GitHub (Downloads for Win/Mac/Linux): https://github.com/ierror/synaps-cad

Happy to answer any questions about the tech stack or the roadmap!

rb2e - 34 minutes ago

I have a suggestion, a major part of 3D modelling that many can struggle with is actually UV mapping. It can take a bit of time to do to get it right and if it could be done decently with one click with better results than with Blender or paid applications like Rizom. They'd probably be a decent market out there.

arjie - an hour ago

I use OpenSCAD with Claude Code and it's pretty impressive. In practice the flow of letting the machine just spend its time iterating on the design with PNGs that it rotates and renders before it actually gives me an STL works quite well.

e.g. https://wiki.roshangeorge.dev/w/Blog/2026-01-11/Modeling_Wit...

SOLAR_FIELDS - 6 hours ago

These are fun but as long as it’s OpenSCAD it will always be a hobbyist toy and not able to be used for professional use. Which is fine! But imo an openscad rendering pipeline is pretty easy. I’m more interested in someone trying to take a stab at vibe coding models that output Brep compatible formats and generate STEP files. This is much, much harder to do but is the main step towards doing this for actual professional use cases.

Presumably someone is getting closer to this, curious who the most robust player in that space is.

Also curious if building an actual kernel replacement for open cascade is on the table now with AI, it’s a very tough thing to do but now it seems somewhat tractable in 2026

nebula8804 - 5 hours ago

CAD modeling seems to be safe from automation for the time being. I've tried various services and ones like sloyd.ai can't even take a simple svg and plop it onto a rectangle base.

And here I thought the CS dept in my school were the elite ones since they brought in the most money and sponsorships. Turns out my fellow Mech Eng classmates will have the last laugh.

statuslover9000 - 4 hours ago

Having played around with this a bit, I recommend using https://github.com/CadQuery/cadquery as the CAD language instead. I'm pretty sure it could even transpile to OnShape / Solidworks models as well, though it might require some funky hacks with their extensions frameworks

timschmidt - 3 hours ago

csgrs author here. Congratulations on this release! Please swing by the csgrs discord or let me know where to join you for future discussions related to SynapsCAD. I'd love to chat about future developments. Amazing work!

contingencies - 4 hours ago

I use openscad vibe coding quite a bit. It tends to fall down beyond extremely simple examples, though. Error categories I've encountered if you want to build better rails: (1) forgetting axis orientations after multiple layers of rotate() (2) center=true presence ignored resulting in mistaken geometry (3) inconsistent naming (4) insufficiently verbose naming (5) 3D printing tolerances (6) lack of validation (7) shared faces causing rendering issues

I would suggest that every stage has the following basic checks: (A) If it's a 'substract' type operation, ensure the resulting shape has less volume than the original shape (B) Ensure no 'subtract' results in zero volume shape (C) Ensure no 'shared faces' exist (D) Ensure output is consistent with requisite axes (eg. render an elevation in orthographic and know which way is up/down in profile so that relative terms can be quantitatively verified in the rendering) (E) Name everything with a semantic tree that is updated properly instead of hacked upon until it becomes illogical and incoherent

This would go a huge way to fixing the main issues encountered so far.

bdcravens - 3 hours ago

I've had mixed results just giving a prompt to ChatGPT, etc, which usually uses CadQuery and produces an STL as an artifact.

toastal - 3 hours ago

If it’s GPL then you must care about “free software”. If that is the case, you should reconsider hosting on a fully-proprietary code forge. It requires cognitive dissonance to thing FLOSS is the right license for your project but not for your tooling/community.