A binding maps a calculator option (Width, Height, Material, Shape, …) to a property of the editor canvas (artboard width, background color, cut-line shape, bleed, …). When the customer changes a bound option in the editor's right panel, the canvas updates immediately. You configure bindings in Calculator Editor → Step 5 (Designer) → Designer mode → right panel → Canvas bindings.
Bindings only apply in Designer mode. Image Edit focuses on a single uploaded image — artboard framing is controlled by Image framing in Step 5 gear settings, not canvas bindings.
For Image Edit and Designer layout behavior, see Configuring Step 5 (Drag selection vs Drag image, Crop outside image, and Crop feature settings) and How customers use the editor.
Designer mode can expose a Front and Back design surface (for example double-sided business cards or T-shirts). Each side has its own right-panel options and canvas bindings — the back does not copy settings from the front.
Translate front and back labels under the gear Translations tab. See Product Designer Translations.
| Setting | Front / Back behavior |
|---|---|
| Artboard size (width, height, size chart) | Shared — configure on one side only. The product has one physical size. |
| Cut-line, orientation, bleed, safe zone | Shared — one shape and trim per product. |
| Background, product image, preview overlay | Separate — each side can have its own bindings and option maps. |
| Right-panel options | Separate — pick different calculator options per side (for example back print color only on Back). |
If a binding is blocked on one side, the + Add binding menu explains that the other side already controls that property. Remove or move the binding there first.
On the storefront, customers switch sides with the Front / Back toggle above the zoom controls. Each side keeps its own design until save. Proof, print-ready, and canvas JSON for the back appear on the Design Files page under the back label. See Print quality and production output.
fixed bindings).| Property | Driven by | Effect |
|---|---|---|
artboardWidth |
Width / Length / Area option | Artboard width updates live |
artboardHeight |
Height / Length / Area option | Artboard height updates live |
artboardDepth |
Depth option | Artboard depth for future 3D product previews — binding is available in Step 5, but storefront 3D display is not yet supported |
orientation |
Select / swatch option | Portrait / Landscape / Square |
background |
Color picker / swatch | Solid color or image per choice (fill, contain, stretch, tile, center, no-repeat per value) |
cutLine |
Shape swatch | Named shape (rect/circle/rounded/star) or "auto" for image trace. See Cut lines and die-cut export. |
bleed |
Fixed or option | Outer dashed border |
safeZone |
Fixed or option | Inner safe-zone border |
productOverlay |
Fixed scene or per-choice (imageMap) |
Scene frame around the design area (nine-slice; not in print/export). See Preview scenes, effects, and clear stickers. |
productImage |
Dynamic (variant/metafield) or swatch imageMap |
Bound pattern or variant image on the canvas: repeat mode, panel width (physical print width), Repeat pattern at panel width, placement, optional Panels in image. Drives true-scale wallpaper preview and the Show panels seam guides. See Wallpaper and product image bindings. |
previewOverlay |
Scene / material imageMap |
Product mockup overlay toggled by the Preview toolbar tool. See Preview scenes, effects, and clear stickers. |
unitToPx = canvas pixels. The source can be a calculator option or a pricing variable (computed formula).When an Image swatch option uses Image source → Shopify product variants on Basic settings (see Option Basic Settings):
| Calculator option | Type | Bound to |
|---|---|---|
| Width (in inches) | Length | artboardWidth, dimension, unitToPx = 96 |
| Height (in inches) | Length | artboardHeight, dimension, unitToPx = 96 |
| Shape | Swatch (Round / Square / Die-cut) | cutLine, svgPathMap |
For "Die-cut", set the svg path map value to "auto". The editor traces the customer's uploaded image to generate the cut-line automatically.
Bind the customer's wall, then bind the pattern with Product image (not background alone) when you need pan, panel seams, and true-scale preview.
| Calculator option | Type | Bound to |
|---|---|---|
| Width (feet) | Length | artboardWidth, dimension, unitToPx = 1152 (96 × 12) |
| Height (feet) | Length | artboardHeight, dimension, unitToPx = 1152 |
| Pattern | Swatch | productImage, imageMap — set repeat, panel width, and placement per choice |
Step 5: Product preview, Drag image. Add Show panels from the tools + menu when customers should see seam guides.
Copy-ready recipes (roll wallpaper, murals, metafield panel width, multi-panel assets): Wallpaper and product image bindings.
Use background with Tile on the image map only when you want a decorative tiled fill behind design elements and do not need wallpaper-style pan or panel-width preview. For wallpaper storefronts, prefer Product image above.
| Calculator option | Type | Bound to |
|---|---|---|
| Pattern (optional) | Swatch | background, imageMap — set Tile per value |
The Artboard size binding has two independent sources — a Width source and a Height source. Each can be:
Set Size from → Width & height sources, then choose each source. When a source is a multi-field dimensions option, also pick which dimension input drives that axis.
To instead map a single choice option (e.g. a "Size" dropdown) to fixed width × height per choice, set Size from → Per-choice size chart and fill in the table.
When each axis uses a dimensions option with separate ft and in inputs, bind pricing variables that combine them instead of a single dimension field:
WIDTH_IN = INPUT("WIDTH","dim1") * 12 + INPUT("WIDTH","dim2")HEIGHT_IN = INPUT("HEIGHT","dim1") * 12 + INPUT("HEIGHT","dim2")WIDTH_IN and Height source to variable HEIGHT_IN. (You can also use the single-axis artboardWidth / artboardHeight properties the same way.)Variable-backed bindings are one-way (customer inputs → canvas). Resizing the artboard in the editor does not write back into variables or split inches into ft/in. For bidirectional resize sync, bind the underlying dimension fields directly.
Numeric variable sources also work for artboardWidth, artboardHeight, bleed, safeZone, imageWidth, imageHeight, cropImageWidth, and cropImageHeight.
A single swatch option can drive multiple properties — add two bindings with the same option key. For example, a "Material" swatch where each value maps both a background color and a cut shape:
| Property | Type | Map |
|---|---|---|
background |
colorMap | vinyl-white → #ffffff, holographic → #a78bfa |
cutLine |
svgPathMap | vinyl-white → rect, holographic → circle |
When a bound option changes the artboard size, the boundary updates but customer-placed elements stay where they were. The customer decides whether to move or resize them.
In Crop outside image layout mode, customers can also resize the artboard with the Crop feature (when enabled). With Write manual artboard size back to calculator on, those resizes update bound dimension options. In Drag image layout mode (wallpaper-style pan), the artboard stays fixed and the bound product image moves inside it — use Product image bindings and placement lock instead of free crop. See Configuring Step 5 and How customers use the editor.
If the customer has already saved their design and then changes a bound option from the main calculator (e.g. changes "Size" from 4×4 to 6×6), the completed state resets and they're prompted to re-open the designer. This avoids printing a proof at the wrong size. Options without bindings (quantity, price-only options) don't trigger invalidation.
#f5f5f0, gloss black → #1a1a1a). The right panel lists live variant values; swatch selection updates price and variant without a page reload.