Layout primitive that arranges child content along one flex axis using the normative Layout DSL spacing scale.
Install @wyrd-company/react or the Flutter package and use it directly —
your DESIGN.md does the styling.
catalog/contracts/stack.ymlsource of truth · verbatim
$schema: https://thewyrdingway.dev/schemas/component-contract.schema.ymlcontractVersion: 0.1.0identity:name: Stacktag: wyrd-stackpackage: wyrd.component.stacktitle: Stacksummary: Layout primitive that arranges child content along one flex axis using the normative Layout DSL spacing scale.relationships:related-to: - layout-dsl - puck-layout-authoring - flexiblebox - quality-parity-and-gatesclassification:category: layoutcomposition: single-slotinteractive: falsetarget-strategy:react: requiredflutter: requiredsurface:properties: - name: directiontype:kind: enumvalues: - row - columnrequired: falsedefault: columnserializable: truesummary: Main-axis direction for child layout. - name: gaptype:kind: integerminimum: 0maximum: 8required: falsedefault: 0serializable: truesummary: Space between children as an index into the normative Layout DSL spacing scale. - name: paddingtype:kind: integerminimum: 0maximum: 8required: falsedefault: 0serializable: truesummary: Uniform inner padding as an index into the normative Layout DSL spacing scale.slots: - name: contentcontent: truerequired: truecardinality: one-or-manyaccepts: - component - contentsummary: Child layout nodes arranged by the stack.events: []states: []parts: - name: rootsummary: Flex layout root.slots: - contentmessages: []obligations:accessibility:role: nonekeyboard: []semantics: - Preserves child order and semantics without adding interactive behavior.behavior:model: statelessinteractions: []hostEffects: []conditions: - rtl - density-compact - text-expansion - safe-areasdui:status: serializableserializableProperties: - direction - gap - paddingserializableSlots: - contenteventBindings: []notes: Stack lowers to the Layout DSL FlexContainer primitive during Puck-to-SDUI normalisation.examples: - name: verticalstate: defaultproperties:direction: columngap: 2padding: 1slots:content: Draft | In review | Ready - name: horizontalstate: defaultproperties:direction: rowgap: 2padding: 1slots:content: Contract | Projection | Package
01
Examples
Generated from the contract's examples block.
Previews are the published @wyrd-company/react component, themed by the
brand's role tokens — flip the site's light/dark toggle and they follow.