The paper reports on CKB (Construction Kit Builder) -a prototype CAD program that designers can program with
positioning and assembly rules for layout of building elements. The program's premise is that designing can be
understood as a process of making and following rules for the selection, position, and dimension of built and space elements. CKB operates at two distinct levels of design: the technical system designer, who makes the rules, and the end designer, who lays out the material and space elements to make a design. CKB supports two kinds of rules with constraint based programming techniques: grid and zone based position rules, and assembly rules that position elements with respect to one another. The paper discusses the rational for CKB and describes its implementation.