Visual Part Builder
The Visual Part Builder is the heart of a product's Configurator tab. You pick a ready-made layout — a framed door, a shaker face, a flat panel, a base cabinet, a drawer box — map your line-item fields to its dimensions, and TimberCloud generates the exact cut sizes for every part. The same setup powers the interactive 3D preview your customers see in the storefront.
This is the deep, mechanical reference: layout types, framing members, glass lites, cut allowances and custom 3D models. For the everyday workflow of building parts and cut lists, see Parts & Cut Lists — the two pages are companions, and each links back to the other.
Availability: The Visual Part Builder, template layouts and the 3D storefront preview are part of Commerce and up (paid plans). On Free, the Configurator tab shows an upgrade preview.
Where it lives: the Configurator tab
Open a product and go to the Configurator tab. You'll choose one of two paths:
| Path | When to use it |
|---|---|
| Use a Template | Pick a common product type (doors, cabinets, panels, drawers). TimberCloud auto-generates the parts and powers the interactive 3D storefront preview — customers see their product update live as they change size and options. |
| Build from Scratch | Full manual control. Define each part yourself — best for custom products the templates don't cover. See Parts & Cut Lists for the manual workflow. |
The rest of this page covers the Use a Template path.
Layout types
When you choose Use a Template, the builder shows a grid of layout types organized into four groups. Each is a ready-made construction with its own dimensions, framing rules and generated parts.
Cabinet Doors (2D)
| Layout | Construction |
|---|---|
| Door / Window | Traditional frame-and-panel door with individual stile and rail widths. The most flexible door — supports mullions, panels, glass lites and arches. |
| Miter Door | Mitered-corner door with a single uniform frame width. |
| M&T Door | Mortise-and-tenon (mitered & tenoned) door with a uniform frame width. |
Face Frames (2D)
| Layout | Construction |
|---|---|
| Face Frame | Cabinet face frame — a grid of openings defined by stiles, rails, mullions and mid-rails. |
Panels & Lumber (2D)
| Layout | Construction |
|---|---|
| Flat Panel | A single flat panel — shelves, drawer bottoms, backs, slab doors. |
| Floating Shelf | A floating-shelf panel. |
| Lumber | Dimensional lumber — a length of stock, priced and cut by length. |
| Slim Shaker Face | A slim shaker-style face/front. |
Cabinets & Boxes (3D)
| Layout | Construction |
|---|---|
| Cabinet | A cabinet box — sides, top/bottom, back and shelves. |
| Drawer Box | Four-sided drawer box with a bottom panel. |
| Bookshelf | Open shelving unit with configurable shelves. |
| Open Box | An open box (no door/front). |
| Chest | A chest / blanket box. |
| Custom 3D Model | Upload your own 3D model and map dimensions so buyers can resize it — see Custom 3D Models. |
Note: TimberCloud's 3D engine also supports an extended cabinet family — Base Cabinet, Wall Cabinet, Corner Cabinet, Lazy Susan, Wine Rack and Face Frame Cabinet. These are used primarily by the 3D Kitchen Designer (Beta), which lays out whole rooms of cabinets, rather than being picked one-at-a-time in the product template grid. If you're building a single catalog product, start with the layouts above; if you're designing a full kitchen, the Designer produces those cabinet types for you.
Mapping dimensions to your product
Each layout needs to know its sizes. You map every dimension to one of two sources:
| Mode | Meaning |
|---|---|
| Map to Field | The value comes from a line-item field (like width or height) or a product option (like material.thickness). It changes per order. |
| Static Value | A fixed number that never changes. |
When you first pick a layout, the builder auto-maps the obvious fields — width → Frame Width, height → Frame Height, depth → Depth, and common option names like material.thickness, design.stile_width, design.rail_width. Adjust any of them, or point a dimension at a different field.
Field references use dot notation drawn from your attributes: material.thickness, design.stile_width, edge.lip_factor. Adding an attribute makes new fields available here automatically. See Attributes and Line Items.
Part Details tabs
For door, cabinet and face-frame layouts, an optional Part Details section opens a set of sub-tabs. Each tab carries a small dot that turns green once you've configured something in it. Which tabs appear depends on the layout:
| Tab | What it controls | Appears on |
|---|---|---|
| Frame | Stile/rail widths, frame thickness, and the panel-layout grid (rows, columns, mullions) | Door / Window, Miter, M&T, Face Frame |
| Panel & Glass | Panel thickness, panel style, panel material, and glass/lite patterns with pricing | Door / Window, Miter, M&T (not Face Frame) |
| Grain | Grain-direction settings for the parts | Door / Window, Miter, M&T, Face Frame |
| Advanced | Extra fine-tuning options | Door / Window only |
| Arch | Top and bottom arch heights for arched-top doors and panels | Door / Window (not Miter, M&T or Face Frame) |
| Cut Allowances | Extra material added to cut sizes for the saw kerf / tool offset — see below | All framed layouts |
Frame members
On a standard Door / Window frame you set each member individually:
| Member | Default |
|---|---|
| Left Stile | 2.25" |
| Right Stile | 2.25" |
| Top Rail | 2.25" |
| Bottom Rail | 2.25" |
| Frame Thickness | material thickness |
Miter and M&T doors use a single uniform frame width instead of separate members.
Tip: To remove a face-frame stile or rail entirely, set its width to 0. The member drops out of both the 3D geometry and the cut list — handy for a face frame that's open on one side or missing a center rail.
Panel Layout (rows, columns and mullions)
The Frame tab includes a Panel Layout block that divides the frame into a grid:
| Field | Meaning |
|---|---|
| Panels H (rows) | Number of horizontal rows of panels |
| Panels W (cols) | Number of vertical columns of panels |
| Mullion Width | Width of the dividers between panels |
| Mullion Layout | Which divider runs the full length; the other is cut into segments |
The builder auto-creates evenly spaced mullions (dividers) from your row/column counts. A 2 × 3 grid, for example, makes a six-panel door.
Staggered dividers ("runs through")
The Mullion Layout control decides which member is one continuous piece and which is broken into segments — this is what produces staggered mid-rails or mullions:
| Choice | Result |
|---|---|
| Mid rail runs through | The horizontal mid-rail is one full piece; the vertical mullions are cut per-column between rails. |
| Mullion runs through | The vertical mullion is one full piece; the horizontal mid-rails are cut per-row between mullions. |
| (unset) | Uses the layout type's own default. |
Choose the option that matches how your shop actually joins the frame — it changes the cut lengths on the cut list, not just the picture.
Cut Allowances (CNC kerf / tool offset)
The Cut Allowances tab adds extra material to the calculated cut sizes so parts come off the machine at the finished size after the blade or bit removes material:
| Setting | Effect |
|---|---|
| Cut Width Allowance | Extra material added to the width of frame parts |
| Cut Length Allowance | Extra material added to the length of frame parts |
Map these to a fixed number (for a constant kerf) or to a field/option if your allowance depends on the tooling. This keeps the cut list and CNC exports honest about real machine sizes.
Panels, glass and custom lite patterns
For the Panel & Glass tab, you choose how each opening is filled:
- Panel style — flat, raised, shaker, glass, and similar looks.
- Panel thickness and panel material — what the field is made of.
- Glass / lites — when an opening is glass, you can price it by lite.
Lite pricing and custom patterns
The builder keeps a lite pricing table so glass doors price correctly:
- Standard lite patterns — set a price for each built-in pattern.
- Custom lite options — add your own pattern with a name (e.g. "Colonial 6-Lite") and a price. Create as many as you sell.
These prices feed the Lite Price Total measurement in the Formula Builder, so a glass-door price can add up the actual lites on the door instead of a flat charge. See Pricing for the formula side.
Cabinet and box dimensions
For 3D cabinet and box layouts you set the case dimensions and options:
| Dimension / option | Description |
|---|---|
| Width / Height / Depth | Overall case size |
| Material Thickness | Thickness of the case material |
| Sides / Top / Bottom / Back | The case panels, with include/exclude and thickness where applicable |
| Shelves | Interior shelves and spacing |
Each part's cut size is calculated from these inputs, so a change to material thickness or overall width re-sizes every affected panel automatically.
Custom 3D models
The Custom 3D Model layout lets you bring your own geometry into the Configurator so buyers can resize it in the storefront. You can upload:
GLB, glTF, STL, OBJ, PLY, FBX, DAE, 3MF and STEP / IGES CAD files (up to 200 MB). TimberCloud converts any of these to a web-ready 3D model on upload.
Note: DWG and DXF drawings are not supported for model upload — export a STEP, STL or OBJ from your CAD tool instead.
After uploading, a parametric config editor and a 3D group picker let you name parts and map dimensions to your product's width/height/depth fields, so customers can resize the model on the storefront. Full details are on Custom 3D Models in the Configurator.
What the parts feed
Everything the Visual Part Builder generates flows into the rest of TimberCloud:
| Consumer | How it uses the parts |
|---|---|
| Build Sheets | Set a table's Row Source to Visual Parts (one row per part) or Panels (one row per opening) |
| Exports | CSV/ORD exports can pull part dimensions for spreadsheets and CNC |
| Shipping | Part dimensions and weight feed package size and shipping rates |
| Inventory | Material usage is deducted from stock |
Part fields in build sheets
When a build-sheet table uses the Visual Parts row source, these part fields are available as columns:
| Field | Description |
|---|---|
gridPart.name | Part name (Left Stile, Top Rail, Panel…) |
gridPart.width | Part width |
gridPart.length | Part length |
gridPart.thickness | Part thickness |
gridPart.sqFt | Square feet |
gridPart.boardFeet | Board feet |
For whole-product totals, summary fields work with any row source: panelGrid.partCount, panelGrid.panelCount, panelGrid.boardFeet, panelGrid.linearFeet, panelGrid.sqFt.
The customer's 3D preview
When a template layout is set up, customers see a live, interactive preview of their configuration in the embeddable storefront:
- The product renders in 2D and 3D, updating in real time as they change dimensions and options.
- It is read-only for customers — they see how their choices look but can't edit the construction.
- It builds confidence in a custom order before they submit.
Troubleshooting
| Symptom | What to check |
|---|---|
| Parts list is empty | Overall frame/box dimensions must be greater than 0; stile/rail widths can't exceed the frame size; thickness must be positive. |
| Dimensions not populating | Confirm the dimension is mapped to a field that has a value on the order; field names are case-sensitive. |
| A face-frame member won't disappear | Set its width to exactly 0 — a blank value keeps the type's default width. |
| Staggering looks wrong | Flip the Mullion Layout ("runs through") choice; it controls which member is continuous. |
| Glass price is $0 | Make sure the lite pattern has a price in the lite pricing table and your formula uses the Lite Price Total measurement. |
| 3D preview not loading | Only 3D layout types (cabinets, boxes, custom model) render in 3D; make sure all dimensions have values. |
Next Steps
- Parts & Cut Lists — the everyday parts workflow (and Build from Scratch)
- Custom 3D Models — upload and map your own geometry
- Formula Builder — calculate part dimensions, quantities and lite pricing
- Build Sheet Builder — turn parts into shop-floor documents
- Shipping Options — size and weight from parts
- Pricing — price glass, panels and materials