A box in 2 (or 3, or 4, maybe 5) Toolpaths and a few operations

Arrange an overview of the parts:

Then draw in the geometry to cut out the front/back for the lid:

and Boolean subtract:

The bottom will be in a rabbet half the thickness of the board which is inset by half the thickness of the board:

and if need be, mirror them vertically to get the needed arrangement:

The space in-between those elements will be taken up by the joinery:

Divide its height by the number of joinery part pairs:

Drag it into position and add suitable dogbones:

Then use the Linear Array command to create the duplicates for the joinery: