I've been working on this sort of thing for a while.<p>For a Japanese spin on this see Tsugite:<p><a href="http://ma-la.com/Tsugite_UIST20.pdf" rel="nofollow">http://ma-la.com/Tsugite_UIST20.pdf</a><p>which I worked through at:<p><a href="https://community.carbide3d.com/t/a-study-of-joinery/28492" rel="nofollow">https://community.carbide3d.com/t/a-study-of-joinery/28492</a><p>Traditional joints (box, dovetails, or obscure variations such as Knapp (cove and pin)) require a vertical fixture and 3 setups (at a minimum) --- cut parts to length and machine internal features, mount four board and cut joints in 2 corners, flip boards (with correct orientation) and cut other two corners.<p>Rabbet joints are simpler --- so simple that they were covered in a video as "The Simple Box":<p><a href="https://www.youtube.com/watch?v=V93xDM3lXsM" rel="nofollow">https://www.youtube.com/watch?v=V93xDM3lXsM</a><p>(ob. discl., I work for Carbide 3D)<p>There have been a number of programs developed for joinery. A current commercial option is:<p><a href="http://www.g-forcecnc.com/jointcam.html" rel="nofollow">http://www.g-forcecnc.com/jointcam.html</a><p>(but it requires a vertical fixture)<p>One commercial option became freely available:<p><a href="https://fabrikisto.com/tailmaker-software/" rel="nofollow">https://fabrikisto.com/tailmaker-software/</a><p>and ingeniously has an option where a 30 degree V endmill is used, but to cut boards held at a 15 degree angle, affording a 90 degree cut with a great deal of control and flexibility --- this can multiply setups to 9.<p>A variation I've been experimenting with is full-blind box joints:<p><a href="https://community.carbide3d.com/t/full-blind-box-joints-in-carbide-create/53329" rel="nofollow">https://community.carbide3d.com/t/full-blind-box-joints-in-c...</a><p>They're reasonably easily drawn up, though they do have some rather specific tooling requirements (a narrow 90 degree V endmill, a square tool of that or smaller diameter, and to make things easier, a large V endmill)<p>One test project was so tight that after putting it together for a dry-fit before gluing I was unable to get it apart:<p><a href="https://cutrocket.com/p/63781eaf9822f/" rel="nofollow">https://cutrocket.com/p/63781eaf9822f/</a><p>I've been working on a programming system to make this sort of thing a bit easier:<p><a href="https://github.com/WillAdams/gcodepreview">https://github.com/WillAdams/gcodepreview</a><p>and have some sketched out joints which I've not been able to make using existing CAM tools which I hope I'll be able to do using this system (if anyone could recommend books on conic sections, I'd be grateful --- that's where I got bogged down last time).