BoardGameBuilder Docs
Elements

List Element

A container that repeats its children for each item in a data list.

List Element

The List element repeats its child elements once for each item in a delimited data value from your spreadsheet. Use it to render variable-length content — for example a card's abilities, attack options, keyword traits, or any field where the number of entries differs per card.

List element rendering variable abilities per card

Properties

PropertyTypeDefaultDescription
SourcestringData binding with a delimited list value
Separatorstring,Delimiter used to split the Source value
NamestringListName for the list values
ModestringStackLayout direction for the repeated groups: Column (vertical, default), Row (horizontal), Grid
Spacingnumber0Gap between repeated child groups in mm
ChildGroupHeightnumberFixed height per repeated group in mm
ListGroupChildrenbooleantrueWhether to group children for each list value
ChildGroupModestringColumnLayout mode applied within each repeated child group

Source

Source specifies the data binding whose value is split into individual items. Use {{ColumnName}} to pull a column value from the current card row. The value is then split by the Separator character and each part drives one repetition of the child elements.

Inside child elements, use {{ListValue}} to get the current item's text and {{ListIndex}} to get its 0-based position. For example, if Abilities = "Attack,Block,Dodge" and the List has a Text child with Source: "{{ListValue}}", three Text elements will render — one per ability.

Source splits into repeated children

Separator

Separator is the character (or string) used to split the Source value into individual items. The default is a comma (,). If your data uses a different delimiter — such as a semicolon (;) or pipe (|) — set Separator to match. Whitespace around items is preserved; trim values in your spreadsheet if leading/trailing spaces are undesired.

Name

Name sets the variable name used to access the current list item value in child elements. The default is List, meaning you use {{ListValue}} and {{ListIndex}} in children. If you change Name to "Ability", the current item value becomes available as {{AbilityValue}} and the index as {{AbilityIndex}}. This is useful when nesting multiple List elements — each list can have a unique name to avoid collisions.

Spacing

Spacing adds a gap between each repeated child group in millimetres. For Vertical lists this is the vertical gap between rows; for Horizontal lists it is the horizontal gap between columns. Use this to avoid items appearing cramped.

ChildGroupHeight

ChildGroupHeight sets a fixed height in millimetres for each repeated child group. When set, all groups occupy the same vertical space regardless of their rendered content size. This is useful for even-spaced lists where each item slot must be the same height, ensuring consistent spacing even when content varies in length.

ListGroupChildren

When ListGroupChildren is true (the default), all child elements are treated as a single cohesive unit per list iteration rather than being rendered individually. Use this when your child elements need to interact with each other as a coordinated group — for example, a Text label and an Icon that should move together. Set to false if each child should be repeated independently.

ChildGroupMode

ChildGroupMode sets the layout mode applied within each repeated child group. The default is Column, which stacks each group's children vertically. Set it to Row to arrange children inside each group horizontally, or Stack to layer them on top of each other.

On this page