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.
![]()
Properties
| Property | Type | Default | Description |
|---|---|---|---|
Source | string | — | Data binding with a delimited list value |
Separator | string | , | Delimiter used to split the Source value |
Name | string | List | Name for the list values |
Mode | string | Stack | Layout direction for the repeated groups: Column (vertical, default), Row (horizontal), Grid |
Spacing | number | 0 | Gap between repeated child groups in mm |
ChildGroupHeight | number | — | Fixed height per repeated group in mm |
ListGroupChildren | boolean | true | Whether to group children for each list value |
ChildGroupMode | string | Column | Layout 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.

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.