Skip to content

Table frame

projects.table_frame

Four legs and four aprons tenoned into them, without a top; outside sizes.

At each leg two tenons meet from adjacent sides, so they are mitred and meet on the leg's diagonal.

Table frame, assembled

Table frame, exploded

Parameters

Parameter Default
width 800
depth 500
height 700
apron_width 100
setback 3
leg_stock 45 mm board, oak
stock 20 mm board, oak

Change them in a design file (see Change an example):

from woodwright.examples import projects

design = projects.table_frame(width=1000)

Drawings

The plans in one PDF: plans.pdf.

Assembly

assembly

Parts

parts

Apron front back

apron front back

Apron right left

apron right left

Leg

leg

Cut list

leg               700 x 45 x 45 mm  oak, 4 pieces: leg_front_left, leg_front_right, leg_back_right, leg_back_left
                  - mortise 80 x 8 mm, 38 deep, in back_edge
                  - mortise 80 x 8 mm, 38 deep, in top_face
apron_front_back  782 x 100 x 20 mm  oak, 2 pieces: apron_front, apron_back
                  - tenon 80 x 8 mm, 36 long, end mitred 45 deg towards bottom_face, on left_end
                  - tenon 80 x 8 mm, 36 long, end mitred 45 deg towards bottom_face, on right_end
apron_right_left  482 x 100 x 20 mm  oak, 2 pieces: apron_right, apron_left
                  - tenon 80 x 8 mm, 36 long, end mitred 45 deg towards bottom_face, on left_end
                  - tenon 80 x 8 mm, 36 long, end mitred 45 deg towards bottom_face, on right_end

Code

From woodwright/examples/projects.py, which imports the names it uses (see From an example to your own design):

def table_frame(
    width: float = 800,
    depth: float = 500,
    height: float = 700,
    apron_width: float = 100,
    setback: float = 3,
    leg_stock: Stock = LEG_STOCK,
    stock: Stock = OAK,
) -> Assembly:
    """Four legs and four aprons tenoned into them, without a top; outside sizes.

    At each leg two tenons meet from adjacent sides, so they are mitred and
    meet on the leg's diagonal.
    """
    # The front left leg stands at the origin, its outside sides (bottom face,
    # front edge) to the front and to the left.
    asm = Assembly("table_frame", root_location=STANDING)
    _table_frame(asm, width, depth, height, apron_width, setback, leg_stock, stock)
    return asm

Exported with woodwright 0.9.0 on 2026-10-25.