Skip to content

weldbox v0.1.0

Choose a tag to compare

@masonhensley masonhensley released this 06 Jul 16:38

First release. weldbox turns a short YAML description of a welded
square-tube box — a machine base, enclosure, bench, or cabinet frame —
into vendor-ready manufacturing files and a jigless welding kit:

  • STEP file per unique tube part, modeled against the vendor's actual
    stock geometry (including published corner radii), ready to upload to a
    tube laser cutting service
  • DXF flat pattern per sheet panel with rivet holes that are guaranteed
    to line up with the holes pre-cut in the tubes
  • Assembly STEP for review — every member a named, role-colored,
    individually hideable product (FreeCAD-friendly)
  • Cut list (markdown + CSV) with per-part lengths, quantities across
    the order, design-rule warnings, and an LTL freight estimate

Highlights

Jigless joints. Every joint self-locates for tack welding: through-wall
tab-and-slot with a 0.010" slip fit, dog-bone corner reliefs, and open
hook-in notches at box corners. Assembled joints are verified for zero
boolean interference in the test suite.

Two frame topologies. full_height_posts (posts run floor to top,
rails butt between) and top_bottom_frames (solid full-width rails across
the top and bottom frames, posts butt up into them).

Interior blocking. Levels (work surfaces with evenly spaced cross
members), vertical supports between layers, and spanners across the top or
bottom faces — composable primitives with validated placement.

Part-count consolidation. Members and panels that differ only by which
faces carry slots or holes are merged into shared part numbers by adding
sacrificial cuts — the two example builds each ship as just 3 unique tube
parts
, unlocking vendors' multiples pricing. Panels merge across
left/right, front/back, and top/bottom because a flat blank can be flipped.

Priced-out dry runs. All dimension math is CAD-free: weldbox generate spec.yaml --dry-run gives the full cut list, design-rule check, and
freight determination in under a second.

Vendor catalogs. RFMG fully encoded (56 profiles across A500, 4130,
DOM, 304 stainless, and 6061/6063 aluminum) with design rules and LTL
freight thresholds; OshCut and Fabtech registered as stubs.

Install

pip install weldbox        # or: uv tool install weldbox
weldbox wizard             # author a spec interactively
weldbox generate my-box.yaml --dry-run

Requires Python 3.10–3.12. Geometry is built on
build123d (OpenCascade); the first
install pulls a large kernel wheel.

Known limitations

  • Square tube frames only (rect/round stock is cataloged but not framed)
  • One tube profile per box; gussets not yet generated
  • OshCut/Fabtech material catalogs pending

See the functionality deep dive
for the full spec reference.


RFMG reference data (profiles, stock geometry, shipping thresholds) is
published by RMFG
as design-against material for their laser tube cutting service; weldbox is
not affiliated with or endorsed by RMFG.