Show HN: Vibe Code your 3D Models (github.com)
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!
11 comments
[ 0.30 ms ] story [ 17.3 ms ] threadPresumably 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
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.
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.
e.g. https://wiki.roshangeorge.dev/w/Blog/2026-01-11/Modeling_Wit...