Skip to content
Base Theme Variable Reference
AutoXXS (320px)XS (375px)SM (640px)MD (768px)LG (1024px)XL (1280px)XXL (1536px)
SketchMaterialiOSTamagui
DataInjectionKeyPatternsServiceTransactionProcessResearchProductQualityPerformanceSpecDomainFunctionTechnologyArchitectureConfigMiddlewareDataDatabaseDrizzleMigrationModelop-sqliteSchemaSQLState ManagementDraftKeystoneMergePatchPatchesPersistenceReactiveRedoStoreUndoTestingDeviceFactoryIsolationTypeScriptZodTopicsCommunicationBidsNVCDesignDesign ImplicationsEducationPedagogyFoundationsPsychologyAttachmentFloodingRelatingAuthentic RelatingUIEditorReact Native

Base Theme Variable Reference

Fragment reference Base Theme Variable Reference
tags
uiconvention

Every StarSpec wireframe theme defines CSS variables in two scope blocks — one for light mode and one for dark mode:

/* Light (default) */
:root[data-wf-theme="id"],
:root.wa-light[data-wf-theme="id"] { … }
/* Dark */
:root.wa-dark[data-wf-theme="id"] { … }

Variables marked required must be defined in both blocks. Variables marked optional extend the base and are only needed when a theme diverges from the Sketch defaults.

Brand Colors (required)

VariableDescriptionTypical LightTypical Dark
--wf-color-primaryMain accent — buttons, active states, focus rings#5E6AD2lighter tint of light value
--wf-color-primary-textText on primary background (must contrast primary)#FFFFFF#000000 or #FFFFFF
--wf-color-bgPage/wireframe background#FFFFFF#111111#1E1E1E
--wf-color-bg-lightCard and input field background#F7FAFCslightly lighter than bg
--wf-color-bg-elevatedActive segment, hover, raised surface#FFFFFFslightly lighter than bg-light
--wf-color-textPrimary text color#1A202Crgba(255,255,255,0.87)
--wf-color-text-mutedSecondary text, hints, placeholders#718096rgba(255,255,255,0.60)
--wf-color-borderDefault container border#E2E8F0rgba(255,255,255,0.12)
--wf-color-border-darkInteractive element border (inputs, focus)#CBD5E0rgba(255,255,255,0.23)

Semantic Colors (required)

VariableDescriptionTypical Value
--wf-color-successSuccess states, progress bars#38A169
--wf-color-warningWarning states, progress bars#DD6B20
--wf-color-dangerError states, destructive actions#E53E3E

Extended Semantic (optional)

VariableDescriptionUsage
--wf-color-danger-bgSubtle danger background fillDanger callout rows
--wf-color-danger-borderDanger border for callout containersBorders on danger cards

Geometry & Spacing (required)

VariableDescriptionTypical Value
--wf-radius-cardCorner radius for cards and modals12px
--wf-radius-buttonCorner radius for buttons and inputs8px
--wf-border-widthThickness of borders1px
--wf-spacing-gapBase gap for stacks and rows1rem

Extended Radii (optional)

Use when a theme needs component-level radius control beyond the two base values.

VariableDescriptionTypical Value
--wf-radius-smSmall radius (badges, tags)4px
--wf-radius-mdMedium radius (inputs, buttons)8px
--wf-radius-lgLarge radius (cards, modals)12px
--wf-radius-pillFull pill (toggle buttons, chips)100px
--wf-radius-inputInput field radius6px
--wf-radius-modalModal/dialog radius12px
--wf-radius-badgeBadge/chip radius4px
--wf-radius-tabsTab container radius8px

Font (optional)

Override fonts when the design system uses a custom typeface. Load the font family via @import above the variable blocks.

VariableDescriptionDefault
--wf-font-bodyBody and label textinherit (Starlight site font)
--wf-font-headingHeading elementsinherit
--wf-font-monoCode, values, monospaced textui-monospace, monospace