Woodwerx design language#
Woodwerx designs are written in KDL: a project of parameters, materials, components and an assembly, which the compiler turns into solids, drawings, a cut list and a fabrication pack. This is the reference for that language. It is generated from the compiler's own tables, the example library and the language reference, and every code sample on it has been parsed or compiled when it was built.
Three facts first: dimensions are floats (19.0, never 19); a quoted string in a value position is an expression, a bare word is a name; and Z is negative going down from a part's top face.
Plain-text versions for tools and agents: every page is available as Markdown at /technology/language/<page>.md, and the whole reference as one file at /llms.txt (also /technology/language.md).
Start here#
- Quickstart: A minimal valid
.kdlskeleton - Task index: "How do I..." jump-in points, each pointing at the file with the real syntax
- Node router: Which file documents which node
Language reference#
- Banding & Stringing: Covers
banding,stringing,lay,pattern. - Bevels & Rabbets: Covers
bevel,rabbet,moulding,trim. - Components & Stock: Covers
component,stock,role,grain,mark,normal,tilt,heading, and more. - Curved Members: Covers
bend,arc,spline. - Cut-Path Outlines: Covers
cut_path,path,keep,line,arc,polyline,point,kerf. - Edge & Face Cuts: Covers
dado,groove,rabbet,chamfer,roundover,moulding,taper,hole, and more. - Grain Axis: Covers
stock,along_x,along_y,along_z. - Hardware Mounting: Covers
hardware,hardware_mount,hardware_use,distribute. - Joinery Contract: Covers
joinery,join,male,female,joint,clearance,fit,butt, and more. - Fastener Joints: Covers
dowel,pocket_hole,biscuit,domino,edge_glue,screw_type,spacing,count, and more. - Frame Joinery: Covers
miter,stile_and_rail,mitred_moulding,angle,groove_width,groove_depth,stub_tenon_length,profile. - Laps, Bridles & Dovetails: Covers
half_lap,cross_lap,bridle,box_joint,dovetail_through,dovetail_half_blind,sliding_dovetail,depth_ratio, and more. - Tenon Joinery: Covers
mortise_and_tenon,round_tenon,tenon_thickness,tenon_width,tenon_length,haunch,centering,through, and more. - Loose Inserts: Covers
dowel,biscuit,domino. - Materials & Hardware: Covers
materials,material,type,color,finish,hardware,hardware_use,hardware_mount, and more. - Model Metrics: Covers
volume,no_join,a,b,reason. - Non-Wood Materials: Covers
stock,ring,constraint,to,substance,tempered. - Oblique & Skewed Joints: Covers
cross_lap,tilt,heading. - Parts & Assemblies: Covers
assembly,part,instance,by,pos,rot,mirror,repeat, and more. - Paths & Splines: Covers
path,cut_path,spline,circle,line,arc,polyline. - Plans & Interfaces: Covers
plan,site,room,run,place,fill,interface,wall, and more. - Project & Params: Covers
project,units,meta,params,preset,label,category,unit_display, and more. - Reuse & Collections: Covers
import,from,export,collection,extends,choice,slots,style, and more. - Round Stock & Sections: Covers
shape,rect,round,section,interp,circle,samples,axis, and more. - Sliding Sleeve: Covers
sliding_sleeve. - Speaker Analysis: Covers
driver,analysis,ac_sealed_fc,ac_sealed_qtc,ac_port_length,ac_helmholtz_fb,fs,qts, and more. - Style & Finish Rule: Covers
finish,one_of. - Tenon Tips & Coped Rails: Covers
tip,wedge,stile_and_rail. - Tongue & Groove: Covers
tongue_and_groove. - Travel: Covers
travel,body,pivot. - Turning & Sections: Covers
stock,section,turn,profile. - Veneer & Laminate: Covers
veneer,match.
Generated indexes#
- Vocabulary: Every node, joinery kind, feature, anchor, face, grain and expression function the language accepts.
- Names: A keyword index: every name with its kind, the page that documents it and how often examples use it.
- Diagnostics: Every ww:: diagnostic code with its message and help text.
- Examples: Complete designs, three in full, and the list of the whole example library.