NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
JermCAD: Browser-Based CAD Software (github.com)
bschwindHN 1 days ago [-]
> YAML-powered, vibe-coded

Ah, bye!

seemaze 23 hours ago [-]
I know, YAML has that effect on me too!
renegat0x0 1 days ago [-]
- user reports a bug

- dev asks vibes for help

- llm rewrites half of the files

- it does seem to fix the bug

- 50 more bugs enter the chat

jermaustin1 1 days ago [-]
I'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 1 days ago [-]
Neato! 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 1 days ago [-]
A 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.
RobotToaster 22 hours ago [-]
>fillets

They have to be done manually, usually using the Minkowski feature iirc.

There's another similar tool called implicitcad that handles them better (it's also the only useful piece of software written in Haskell I've ever encountered) https://implicitcad.org/

zem 18 hours ago [-]
> it's also the only useful piece of software written in Haskell I've ever encountered

pandoc and xmonad are super useful

jacquesm 24 hours ago [-]
> 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.

They don't. So save yourself that trouble. You design the fillets right into the extrusions doing them after the fact is prohibitively expensive.

Thews 22 hours ago [-]
There's actually openjscad and some available jscad-utils that can handle fillets
noveltyaccount 1 days ago [-]
Fun project, it's okay to do things like this just because it's fun for you and you want to explore what's possible. Don't listen to the haters :)
jlarocco 23 hours ago [-]
You might get less pushback if you called it a 3D modeler and not CAD software.

It looks like an okay CSG modeler, but it's missing a thousand features that it would need to be CAD software. There's no PMI, no views, no simulation, no unit handling, no material properties (like material, density, etc.), no product structure, no measurement and dimensioning, ...

seemaze 23 hours ago [-]
CAD (computer aided design) is a rather broad term used across many industries. There are many established CAD programs which do not offer PMI, simulation, or material properties. I do concur that views, dims, and units are table stakes.
nickthegreek 23 hours ago [-]
tinkercad has 5% of that. it is still a cad program.
utopiah 1 days ago [-]
How 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 1 days ago [-]
To add to that, I would like to note:

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.

forgotpwd16 21 hours ago [-]
>code-based CAD solution

Worth mentioning OpenSCAD & ImplicitCAD. There's also Antimony which has a graph-based modeling approach.

kouunji 1 days ago [-]
Very 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.
lloydatkinson 1 days ago [-]
> Important Note: This project is almost entirely vibe-coded and likely contains loads of bugs. Use at your own risk!

There was a time people took pride in writing high quality software.

adastra22 1 days ago [-]
On the other hand, this is an example of a new category of tools: things made by individuals scratching an itch, that wouldn't have been made otherwise because the barrier to entry was too high.

There will always be a need for high quality human-reviewed software, but I think we should celebrate this too.

foobarian 1 days ago [-]
This category of projects reminds me of how the aliens in Niven's "Mote in God's Eye" used to work, making instant bespoke things as they went along.
Mountain_Skies 1 days ago [-]
Scratching an itch with a rusty nail risks tetanus.
isolatedsystem 23 hours ago [-]
You'd be surprised. I have to run RHEL at work, with Gnome. No Albert, no Wofi, no Rofi. Fuck all in the repositories. For months I missed typing Alt + Space, typing filename, hitting enter and having it open.

One evening with Claude. Done. Obviously it's not perfect, but man what an amazing thing to be able to do. I'm not even a software developer. LLMs are the new Excel.

swiftcoder 1 days ago [-]
> There was a time people took pride in writing high quality software.

And other people have always churned out low-quality software that solves a problem they have in a specific way. This is just sort of accelerating

Mtinie 1 days ago [-]
From my viewpoint you are conflating software quality with ambition. All software develops iteratively. Tools now celebrated for quality and consistency (commercial and OSS alike) shipped from states where they were neither. Jerm-CAD existing gives it a shot at improvement. The alternative is it doesn’t exist.
muldvarp 1 days ago [-]
Was there? Software has always been a "speed of delivery over correctness" discipline. LLMs will just crank that up to 11.
maxglute 1 days ago [-]
tfw 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 23 hours ago [-]
My 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 22 hours ago [-]
For a current example of a tool which works along those lines see the venerable BRL-CAD:

https://brlcad.org/

pkphilip 1 days ago [-]
This is really cool! All the best with this
jdndbxbcb 1 days ago [-]
Is it though? Looks and feels like AI slop on openscad
utopiah 1 days ago [-]
Indeed, 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.
jalk 1 days ago [-]
What resources will it pull away if it’s unmaintained?
utopiah 23 hours ago [-]
Contributors to alternatives.
jermaustin1 1 days ago [-]
AI 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.
singularity2001 1 days ago [-]
If it is browser based where's the browser link?? I wish there was a downvote button for submissions.
forgotpwd16 21 hours ago [-]
Browser-based doesn't mean, neither even implies, they're hosting a public instance.
mrbn100ful 1 days ago [-]
Instead 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.

WillAdams 1 days ago [-]
TinkerCAD only works for folks who are willing to get in bed w/ AutoDesk and use a closed source project. See instead:

https://cadoodlecad.com/

though I just use BlockSCAD:

https://www.blockscad3d.com/editor/

1 days ago [-]
vihardev 23 hours ago [-]
[dead]
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 15:03:17 GMT+0000 (Coordinated Universal Time) with Vercel.