Design

Smart layout

Stack, wrap and grid elements the way the browser will — and size them with Fill, Hug and Fixed.

Smart layout is how Shippp understands structure. A container with smart layout arranges its children automatically, exactly like CSS flexbox and grid in the browser. Designs built with smart layout adapt to content and screen width, and they export as clean, responsive code.

Turn on smart layout

  1. Select layers or a container

    Select a container, or several layers you want to group.
  2. Wrap them in a layout

    Press ⌘ G (or ⇧ A), or right-click and choose Smart Layout. For an existing container, use Enable layout in the Layout section.
  3. Choose a direction

    Pick Vertical, Horizontal or Grid in the Layout section.

To undo it, use Remove Smart Layout (⌘ ⇧ G).

The Layout section for a product grid: Grid mode with 4 columns, Fill width, Hug height, gaps and padding.
The Layout section of a product grid in Grid mode: columns, size, gaps and padding.

Layout modes

ModeChildren are…In code
FreePositioned where you put them.Absolute positioning
VerticalStacked top to bottom.flex-direction: column
HorizontalPlaced side by side. Turn on Wrap to flow onto new lines.flex-direction: row (+ flex-wrap)
GridPlaced in columns and rows you define.CSS grid

Spacing and alignment

  • Gap sets the space between children. Choose Auto (space between) to push children to the edges. When wrapping, you can set a separate row gap.
  • Padding can be uniform or set per side (Padding per side).
  • The 3 × 3 alignment grid positions children inside the container.
  • Clip content hides anything that overflows the container.

Tip

Bind gap and padding to spacing tokens instead of typing numbers. Your spacing stays consistent, and it can change per breakpoint in one place.

Sizing: Fill, Hug and Fixed

Every layer has a width and a height mode. Open the menu in a size field to change it; the field shows a Fill or Hug badge when it is not fixed.

ModeBehaviourUse it for
Fill containerTakes all available space in the parent.Columns, cards in a row, full-width sections
Hug contentsGrows and shrinks with its content.Buttons, tags, text blocks
FixedKeeps an exact size.Icons, avatars, images with a set size
Apply variable…Uses a size token.Consistent widths, e.g. a sidebar width
Fit to content (screens)Grows the screen to fit everything inside.Long, scrolling pages

Lock aspect ratio keeps proportions when one side changes — useful for images and media.

Grid layouts

In Grid mode you define column and row tracks and their gaps in the Grid tracks editor. Each child can span several columns or rows with Column span and Row span. Change the number of columns per screen to make a grid responsive — for example 4 columns on Desktop, 2 on Mobile.

Taking a layer out of the flow

Sometimes one element should float — a badge on a card corner, a decorative shape. Select it and click Ignore smart layout in the Position section. It keeps its position and constraints while its siblings keep flowing. Rejoin smart layout puts it back.

Reorder children

Drag children in the canvas or in the layers tree. With a child selected, the arrow keys move it within its smart layout instead of nudging it by pixels.

Constraints in free layouts

Inside a Free container or a screen, constraints decide how a pinned layer reacts when its parent resizes. Horizontal options are Left, Right, Left + Right, Center and Scale; vertical options are Top, Bottom, Top + Bottom, Center and Scale.