Underdesk Cable Clip V3 Sideprint
implemented unverified
Support-free variant of the under-desk cable clip: the same asymmetric side-opening hook, but the mounting flange is a TONGUE inside the extruded profile, running behind the hook, with the screws spaced along it. The whole part is one constant-section extrusion, exported profile-on-bed (extrusion axis vertical) — every print layer is the same shape, so it has zero overhangs by construction. Trade-off, stated honestly: lip flexure loads run across print layers in this orientation, so use 3+ perimeters.
Built from a real example — orbit to inspect.
Declaration example
A minimal product declaration for this archetype — exposed parameters at
their defaults. Validate and build it with
forge validate / forge build.
schema: product/v1
id: my_underdesk_cable_clip
archetype: underdesk_cable_clip_v3_sideprint@1
params:
bundle_d: 20mm
mouth_gap: 10mm
upper_lip_len: 6mm
lower_lip_len: 15mm
modifiers:
- id: fillet_soften
target: tongue Parameters
| parameter | type | default | range | role | |
|---|---|---|---|---|---|
bundle_dcable bundle diameter the cradle must hold | length | 20mm | 8mm … 40mm | functional | exposed |
wallconstant shell wall thickness | length | 3.5mm | 2mm … 6mm | manufacturing | |
mouth_gapthroat opening; must stay narrower than the bundle | length | 10mm | 4mm … expr(bundle_d * 0.7) | functional | exposed |
upper_lip_lenshort fixed stop lip above the mouth | length | 6mm | 3mm … 12mm | functional | exposed |
lower_lip_lenlong tapered flex lip below the mouth — the retainer | length | 15mm | expr(upper_lip_len * 1.6) … 30mm | functional | exposed |
widthextrusion width along the cable axis | length | 30mm | 16mm … 60mm | assembly | |
tongue_tmounting tongue thickness (the in-profile flange) | length | 5mm | 4mm … 10mm | manufacturing | |
neck_drop | length | 8mm | 3mm … 20mm | aesthetic | |
screw_count | count | 2 | 1 … 3 | assembly | |
screw | choice | M4 | M3 | M4 | M5 | assembly | |
screw_spacingspacing between screws ALONG the tongue behind the hook; the tongue auto-sizes to cover the last screw | length | 22mm | 14mm … 60mm | assembly | |
clearanceradial cavity clearance around the bundle | length | 0.8mm | 0.2mm … 2mm | manufacturing |
Regions
-
tonguemounting surface -
screw_zonesfastener keepout -
cable_contactsoft contact surface -
snap_roothigh stress region -
lower_lipretaining flexure
Contract
Guarantees
must-have features and invariants — verified on every build
asymmetric_side_hookside_facing_mouththrough_cavityrear_mounting_tongueretaining_lower_lipsupport_free_by_constructionmouth_gap < bundle_d * 0.7lower_lip_len > upper_lip_len * 1.5
Will refuse
explicit prohibitions — the engine refuses to build these
symmetric_c_ringclosed_ringdownward_entryboxy_rectangular_hook
Not claimed
what passing validation does not mean
- Provided “as is” under Apache-2.0 — no warranty of fitness for a particular purpose.
Allowed modifiers
Subscribed validators (15)
form.mouth_opens_sidewaysform.mouth_gap_matchesform.lower_lip_longer_than_upperform.not_symmetric_c_ringform.wall_thicknessform.contact_edges_roundedform.screw_access_clearform.mount_face_flatform.constant_sectiontopology.single_connected_solidtopology.cavity_opentopology.mouth_opens_sidewaystopology.asymmetric_lips_geometrytopology.screw_holes_opentopology.countersinks_present