# Finger-Joint Box Generator (laser & CNC) > Laser-cut and CNC finger-joint boxes with kerf compensation, lids and dividers. Generate a finger-joint (box-joint) box from inside or outside dimensions and the material thickness: closed lid, open tray or sliding lid, a grid of cross-halved dividers, kerf compensation for lasers and dog-bone reliefs for CNC routers. Every joint gets an odd number of equal fingers; the parts are nested onto your laser bed or stock sheet and exported as layered SVG, DXF R12, a 1:1 PDF with a scale bar and, for routers, G-code. Part of usefulweb.app (https://usefulweb.app/). Part of [Kerfwise](https://kerfwise.usefulweb.app/) (ownerApp: kerfwise). Results are deterministic calculations from the inputs and the listed assumptions; the API returns exactly what the web page shows. ## Use it - Human interface: https://kerfwisefingerjointbox.usefulweb.app/ (interactive tool at https://kerfwisefingerjointbox.usefulweb.app/tool) - JSON API: POST https://kerfwisefingerjointbox.usefulweb.app/api/v1/calculate with a JSON object of inputs (schema: https://kerfwisefingerjointbox.usefulweb.app/api/v1/tool) - OpenAPI: https://kerfwisefingerjointbox.usefulweb.app/openapi.json - MCP (Streamable HTTP): https://kerfwisefingerjointbox.usefulweb.app/mcp - tool `kerfwise_finger_joint_box` ## Inputs - width (number): Width (mm) - depth (number): Depth (mm) - height (number): Height (mm) - dims (select): Dimensions are - thickness (number): Material thickness (mm) - Measure your sheet with calipers: 3 mm plywood is often 2.8–3.2 mm. - finger (number): Finger width (target, mm) - Each joint is divided into an odd number of equal fingers close to this width. - kerf (number): Kerf compensation (mm, 0 = off) - The width of material the laser burns away. Find it with the kerf test coupon. - fit (number): Fit clearance for slots and sliding lid (mm) - lid (select): Lid - columns (integer): Compartments across the width - rows (integer): Compartments across the depth - dogbone (number): Dog-bone reliefs for a router bit of diameter (mm, 0 = off) - sheetWidth (number): Sheet or laser bed width (mm, 0 = no sheet) - With a sheet size the parts are nested onto as many sheets as needed; 0 lays every part out in one drawing. - sheetHeight (number): Sheet or laser bed height (mm, 0 = no sheet) - spacing (number): Gap between parts (mm) - For CNC routing use at least the cutter diameter. - labels (boolean): Part names on a separate label layer - paper (select): PDF pages - cnc (select): CNC G-code - toolDiameter (number): Cutter diameter (mm) - feed (number): Feed (mm/min) - plunge (number): Plunge (mm/min) - stepdown (number): Depth per pass (mm) ## Method - Outside size = inside size + 2 × thickness in width and depth; in height + 2 × thickness with a lid, + 1 × thickness for an open tray, and + 2 × thickness + the lid slot for a sliding lid. - Each panel starts as its full outside rectangle. Where two panels overlap along a box edge, the T × T column is divided into an odd number n of equal fingers (n = the odd number nearest to length ÷ target width). Front and back own the end fingers against the sides, the walls own them against bottom and lid, and a corner cube shared by three panels goes to the highest-ranked one; each panel loses what its neighbours own. A point-sampling check in the test suite confirms that the panels fill the box shell exactly once. - Kerf compensation offsets outer outlines outwards and inner cut-outs inwards by half the kerf, so the parts come out at their nominal size. Dog-bones add a circle of the cutter radius through every inside corner so square fingers seat after routing. - Dividers are loose, cross-halved where they meet (slots of thickness + fit from the top of one and the bottom of the other). Nesting uses the Kerfwise MaxRects sheet nester; G-code uses the Kerfwise CNC engine (outside profiles with cutter compensation, inner cut-outs first, tabs). - SVG files use millimetres (width/height in mm, 1 user unit = 1 mm) with one group per layer: cut (red #e4002b), score (blue #0067c5), engrave (black) and labels (grey). DXF R12 uses the same layers, millimetres, y up. ## Limits - Laser cutters and CNC routers can start fires and release harmful fumes: never leave the machine unattended, use extraction, and never cut PVC, vinyl or other chlorine-containing plastics. Sizes, kerf and fit are starting points — check them with a test cut and follow your machine maker's safety rules.