iOS
Generated from DESIGN_SYSTEM.md
Rules
Token consumption:
- All tokens in
ios/Packages/Core/Sources/Core/Theme/AppTheme.swift - Colors:
AppTheme.Colors.*viaColor.dynamic(light:dark:)— never hardcoded hex - Spacing:
AppTheme.Spacing.*— never raw integers (.padding(14)is prohibited) - Radius:
AppTheme.Radius.* - Typography:
AppTheme.Typography.*(or SwiftUI system aliases for Dynamic Type)
Component locations:
Sidebar spec (exact):
- Header:
HStack(alignment: .center)— not.baseline - Subtitle:
font size 11pt— not 13pt - Nav VStack spacing:
4pt— not 8 or 10 - Nav item vertical padding:
8pt - Nav item font:
14.5pt, semibold when active - Active bg:
Color.dynamic(light: 0xEFF6FF, dark: 0x172545)(=brand-container) - Active text:
Color.dynamic(light: 0x155CFB, dark: 0x60A5FA)(=brand-on-container) - Corner radius:
12pt(AppTheme.Radius.md) - Footer: vertical
VStack(spacing: 10)— auth button44ptheight, controls38ptheight
Live specimens
AppTheme.Colors- Color
AppTheme.Spacing- Spacing
AppTheme.Radius- Corner radius
AppTheme.Typography- Typography
.cardSurface()- Flat card
CardSurfaceOverlay- Card on a gradient
Toggle + .tint(brandPrimary)- Switch
AppNavCircleButton- Back and bar buttons
.confirmationDialog- Destructive confirm
.sheet + presentationDetents- Task sheet
.redacted(reason: .placeholder)- Loading skeleton