Comment by geedy

8 hours ago

Hi HN, I'm Graeme. popkern is a free, open-source parametric BRep CAD kernel in Rust. You can try it in your browser here, no install: https://popkern.dev/live/ (I recommend checking out the six-axis robot arm example near the end of the examples list, it's 57 parts and ~1,200 features, all built from script). popkern is currently released under AGPL-3.0, with an exception so your scripts, models, and STEP files remain entirely yours.

The thing I'm proudest of: where several fillets of different radii meet at a corner, most kernels leave a curvature break you can see in reflections. popkern fills those corners with a certified G2 (curvature-continuous) patch, so zebra stripes flow through unbroken: https://popkern.dev/assets/img/zebra-corner.png

Other bits that might be interesting:

- Parts are short Rhai scripts. Bigger parts are folders of numbered "migration" scripts, like database migrations, so models are git-friendly and you can scrub through their history. A later step can reach back and modify an earlier feature.

- The model viewer in popkern live allows you to see into the model via a section view.

- All supported: booleans, fillets/chamfers, sweeps, revolves, lofts, shelling, constrained sketches, STEP in/out, and MCP for direct agent usage.

- When an operation can't produce a valid solid, it refuses and tells you why instead of returning something broken.

How it's built: the code is written by AI agents working from published CAGD research, under my direction. I spend a lot of my time reviewing research to identify solutions that close gaps. Every change must pass thousands of tests plus the kernel's own validity checks, and results are cross-checked against OpenCASCADE wherever the two are comparable. Happy to go deep on how that works.

What's missing: a lot, it's early. Booleans fail many tricky cases, and non-manifold topology is being built out right now. Similarly, the breadth of fillet support will grow over time, and there is much to improve with regards to surface healing. Fuzz testing for all three of these areas will be tackled soon and help harden popkern a great deal.

I hope people find it useful even this early, and I’d love to hear what breaks. Happy to answer questions.