# Glueball

A CAD-agnostic routed-assembly solver for frames, weldments, tube & pipe, and wire harnesses that compiles 3D graphs into deterministic build plans without linking a geometry kernel.

[Open in the WASM portfolio](https://yemelianov.dev/?project=glueball&detail=1)

Tags: rust, cad-engine, solvers, compilers
Source: private

Frames, weldments, tube & pipe runs, and cable harnesses represent one underlying engineering challenge: an attributed 3D topology graph evaluated against a parametric section catalog to produce cut lists, bend parameters, and manufacturing schedules. Glueball extracts this shared problem into a standalone, reusable Rust core, turning host CAD applications into thin adapters over a strictly typed plan contract.

The core deliberately never links a solid modeling kernel. Rather than relying on non-deterministic solid booleans, the engine computes transforms, cut planes, weld runs, and flat wire developments deterministically in floating-point geometry while strictly adhering to a "refuse-don't-clamp" safety model. If an input angle or reference plane is ambiguous, the engine refuses the design with machine-readable diagnostics instead of guessing with silent heuristics.

Routing operates across two distinct mathematical layers: logical wires are decoupled from physical carrying segments, allowing wire paths to derive bundle fill percentages, true outer diameters, and cut lists from first principles. The resulting build plan (`plan.json`) is content-addressed with cryptographic hashing, making every fixture independently re-verifiable across adapters for Blender, Autodesk Fusion, and Industry Foundation Classes (IFC).

Status: active core engine and CLI backed by extensive golden test suites and formal plan schemas. Source is proprietary.
