Skip to main content

Variables

Design tokens for consistent spacing, sizing, and styling across components.

Variable Categories

Height

Component height values:

SizeDefaultUsage
small32pxIcon buttons, compact inputs
medium40pxStandard buttons, inputs, list items
large100pxHero sections, large cards

Radius

Border radius values:

SizeDefaultUsage
small16pxSubtle rounding for cards, inputs
medium20pxStandard button rounding, modal corners
large100pxFully rounded (pills), avatars, FABs

Padding

Internal spacing values:

SizeDefaultUsage
small12pxCompact components, dense lists
medium16pxStandard buttons, cards, modals
large24pxPage margins, section spacing

Stroke

Border width values:

SizeDefaultUsage
small0.5pxSubtle dividers, hairline borders
medium1pxStandard borders, input outlines
large2pxEmphasized borders, focus rings

Gap

Spacing between elements:

SizeDefaultUsage
small4pxTight groupings, icon-to-text spacing
medium8pxStandard list item gaps, form spacing
large12pxSection separators, card grids

Usage

With Multinaire Components

const { variables } = useMultinaireTheme();

<MultinaireContainer
padding={variables.padding.medium}
borderRadius={{variables.radius.medium}}
gap={{variables.gap.medium}}
>
{/* Content */}
</MultinaireContainer>

Direct Access

const { variables } = useMultinaireTheme();

<View
style={{
padding: variables.padding.medium,
borderRadius: variables.radius.medium,
gap: variables.gap.small,
}}
>
{/* Content */}
</View>

Configuration

{
"variables": {
"height": {
"small": 32,
"medium": 40,
"large": 100
},
"radius": {
"small": 16,
"medium": 20,
"large": 100
},
"padding": {
"small": 12,
"medium": 16,
"large": 24
},
"stroke": {
"small": 0.5,
"medium": 1,
"large": 2
},
"gap": {
"small": 4,
"medium": 8,
"large": 12
}
}
}

Design Guidelines

  1. Use medium as the default - It provides comfortable spacing for most use cases
  2. Use small for density - When you need to fit more content
  3. Use large for emphasis - Hero sections, prominent calls to action
  4. Maintain consistency - Use the same size variant for related elements