Freecad
From Wiki2
https://www.youtube.com/watch?v=pdm-GUvisJo
https://www.glassondesignstudio.com.au/blog/how-model-mortice-and-tenon-joint-using-freecad
I was finally able to get an offset rectangle with this sequence: Select rectangle. Click on Offset button on toolbar. Click on Copy button in Offset dialog. Move cursor to inside/outside of rectangle in main window. Enter offset into Distance edit box in Offset dialog. Strike Enter. Jul 28, 2016
How do I make Draft Offset work? - FreeCAD Forum