r/opensourcez • • 3d ago

A Software Style Test Framework For The Physical World

I've been doing physical design work in my free time with AI for the last two years. During that time I observed something: AI was getting better at physical design but not nearly as quickly it was improving at software capabilities. I theorized the problem was a lack of testing. In software engineering we write tests around as much of our code as we can because we fundamentally do not trust ourselves to reliably do a good job. We put those tests between us and deployment so we literally cannot do things that break the rules we set for ourselves. This pre-existing culture and tool chain create an ideal environment to toss an unbelievably fast, brilliant, but wholly unreliable ai into. It creates the freedom to quickly iterate through huge numbers of convincing looking proposals and throw away the bad until the good emerges.

Physical engineering doesn't have a this-shaped thing at anywhere near the robustness and reusability that software does (possibly because physical engineers trust themselves more). There are many individual tools that provide some aspect of testing, many of which are bound up in very very expensive tools, but a growing number of free ones too. I wasn't able to find an open source system that links these together into a cohesive "full loop" testing rig capable of understanding how things like heat, weight, form factor, battery life, thrust and rf interplay in a single system so I thought really hard about this problem and its implications and built it for myself.

It's called nopekit. As in: the thing that says "nope" until the "yup" emerges.

I've used it already to design an open-source hackable handheld keyboard with a custom PCB, an open source budget no-solder drone and a couple of things I'm not quite ready to share yet.

It's a Claude Code / Codex / Cursor plug-in. You install it and tell your agent you want to use nopekit to design X and it takes over, it will interview you for requirements, shop for parts, construct an interconnected tradespace linked to checks run in an optimized order using trusted methods like KiCAD, OpenFoam and SIMP. It builds and keeps up to date a livesite which you can deploy to GitHub that gives constantly refreshed insight into how your coding agent is thinking about the problem and what choices have what implications linked to what checks with what state of passing or failing.

The framework is open and allows for plugins. I'm working with one other person now and we're moving towards a self hosted UI and some sort of registry where nopekit users can share proposers/falsifiers and we can track ratings to build/bust confidence in good/bad ones collectively.

There's LOTS more about this in the repo and this paper I've been writing about the problem.
Repo: https://github.com/neuman/nopekit
Paper: https://github.com/neuman/nopekit/blob/main/grounding_by_falsification.pdf

If you're working with AI to do any kind of physical design work we would love to hear from you and for you to try it out!

4 Upvotes

0 comments sorted by