6 ms·
Show HN: JermCAD – A YAML-powered, vibe-coded, browser-based CAD software
I had a hard time figuring out CAD software like Fusion, OnShape, etc., and decided to go about making my own CAD modeling software that I can "program" my models similar to how I think about them in my head.
I used Cursor to write like 95+% of this, giving it my YAML examples and making it implement the actual code to make those work.
Currently 100% self-hosted, and it is just a static HTML/CSS/JS, so it might just work without running npm at all.
Very few features working currently, basically just modeling a few primitive solids, and boolean operations.
- pkphilip 11mo agoThis is really cool! All the best with this
- jdndbxbcb 11mo agoIs it though? Looks and feels like AI slop on openscad
- utopiah 11mo agoIndeed, and what worries me is that it might pull resources away from OpenSCAD or similar projects for something that, I imagine, won't be maintained.
- jermaustin1 11mo agoAI Slop, yes. OpenSCAD, no. You can read the package file and see the dependencies. It is based on three.js and a couple of boolean-related plugins, and then the LLM wrote a text-based STL export function.
- utopiah 11mo agoHow does it compare to OpenSCAD, bitbybit, JSCAD, FreeCad, CadQuery, Curv, implicitCad, libfive, RepCAD, etc? I mean it's nice that it exists, I guess, but there are already quite a few project (my list here isn't exhaustive) that seem (on the surface at least) equivalent beside the input format (YAML, but maybe some support that, I don't know). So I don't want to imply that this has been vibe coded just to avoid searching what already exist, why they exist, why they don't support one specific feature... but still now that we are in this situation, namely 1 more item on the least, how can we compare it with the rest in order to know which one to use for our own needs?
- WillAdams 11mo agoTo add to that, I would like to note: https://pythonscad.org/ https://pythonscad.org/ (which to be fair, is getting integrated into OpenSCAD Dev/Nightly) which was a sea change for me in terms of both my usage, and my learning as a programmer, making my own project far more capable --- working on one last re-write (making use of skin() for straight-line moves), and it should be ready for general usage.
- mrbn100ful 11mo agoInstead of spending half a day learning CAD basic, let's rebuild the worst version full of bug! Yays! Also, there is an easy to learn basic cad. It's called Tinkercad.
- deleted 11mo ago[deleted]
- WillAdams 11mo agoTinkerCAD only works for folks who are willing to get in bed w/ AutoDesk and use a closed source project. See instead: https://cadoodlecad.com/ https://cadoodlecad.com/ though I just use BlockSCAD: https://www.blockscad3d.com/editor/ https://www.blockscad3d.com/editor/
- singularity2001 11mo agoIf it is browser based where's the browser link?? I wish there was a downvote button for submissions.
- forgotpwd16 11mo agoBrowser-based doesn't mean, neither even implies, they're hosting a public instance.
- jermaustin1 11mo agoI'm the author, so I will address everyone's comments in here: > Why To scratch an itch. I wouldn't have ever made this if /I/ had to make it. I wanted a way to express the primitive solids in a way that my autistic brain understands (through rigid object definitions in code). I have another neurodivergent trait called aphantasia which doesn't let me easily (at all really) conjure images in my mind, everything is described as text in my head... literally like reading a book, bringing up an "image" takes me multiple seconds while I read through all my brain comments about an image, especially if I'm supposed to focus on one feature. So I had an LLM build a tool for me (why it is called JermCAD and not something more professional sounding) that works how my brain does. > How does it compare 100% doesn't. All of those tools are light years more advanced, and while I did try to use a CadQuery JS port, and another threejs CAD plugin, I couldn't get them to work, and I'm not a fan of python, so I stuck with what I knew font-end, web development. > AI Slop Yes. But again, this is a personal project that scratched an itch for me. It is a testament to how far you can get something in a few hours with an LLM, that would have taken months or years, but likely never would have happened, because who is going to invest months into redefining CAD to work the way that their specific neurodivergence works (Well maybe an autistic person hyperfixated on it, or me when I was 25 years younger). --- This software as it is probably isn't useful to anyone except for myself. I originally shared it a few days ago to start a conversation, it got no traction. I am not saying that this or any vibe-coded, AI slop should ever be production software, but why not use it for a very specific implementation of something?
- NortySpock 11mo agoNeato! I might just self-host this at home and explore using it for my 3d printing needs... Declarative constructed solid geometry sounds like how OpenSCAD works. I was curious if you took any inspiration from that project, or if you had found it but didn't suit your needs for some reason...
- jermaustin1 11mo agoA friend of mine who ran a print farm actually told me about OpenSCAD when I shared a screenshot of my first design (a ball joint with armature). So I didn't take inspiration, but I plan on learning it just to figure out how they handle things like fillets. Because currently my fillets are blowing up. I contemplated just faking the fillets using an extrusion with a cylinder cut out of it, but if I can define edges in code and fillet them that would be better.
- kouunji 11mo agoVery predictable amount of snark being aimed at this, but to me it’s incredible that something of this complexity is even possible with a few hours of effort. It is irrelevant in this moment whether this has bugs or is useful to others; what it signals is pretty significant. In a year this kind of effort will be able to yield something even better.
- maxglute 11mo agotfw faster to build cad than learn cad. great job, isn't this how earliest incarnation of cad use to work, i think they had stylus, human interface support fair early, but before that one would expect just imputing coordinates in punched tape or something equally tedious but obvious to some brains.
- jermaustin1 11mo agoMy dad was a CAD engineer from the early 80s until he was laid off in 08, before that he was a drafter on pen and paper. He was the first one in his company to be given a computer for CAD, and he said this was basically what he would do. "action shape center_x center_y width height" But he said that everything was "conjoined" by default. He could be wrong (it was 45 years ago, and he's in his 70s now), but he would type: a {return} c {return} 0 {return} 0 {return} 1 {return} 1 {return} That would add a cube. All the commands/params could be shorthand or long hand, but he was a two finger typist, so there is no way he'd have typed out an entire word that spanned multiple sides of the keyboard like "cube". You could subtract a sphere with "s {return} s" and I'm assuming you could intersect with "i" or similar, but he doesn't remember ever doing that.
- WillAdams 11mo agoFor a current example of a tool which works along those lines see the venerable BRL-CAD: https://brlcad.org/ https://brlcad.org/
- vihardev 11mo ago[dead]
- forgotpwd16 11mo ago>code-based CAD solution Worth mentioning OpenSCAD & ImplicitCAD. There's also Antimony which has a graph-based modeling approach.