Skip to content

Spark tokens and implementation ​

css
.studio-spark {
  --sk-bg: #252525;
  --sk-surface: #2c2c2c;
  --sk-ink: #f0efeb;
  --sk-muted: #b8b9b4;
  --sk-border: #444444;
  --sk-accent: #ff953f;
  --sk-on: #2b1506;
  --sk-radius: 8px;
}

Component contract ​

ClassPurpose
studio-kit studio-sparkTheme scope and semantic variables
sk-primary, sk-ghost, sk-danger, sk-sm, sk-lgButton variants
sk-badge success/warning/danger/infoStatus variants
sk-avatar, sk-avatarsPerson and group identifiers
sk-choice, sk-invalid, sk-errorForm variants and error text
sk-switch on, sk-spinner, sk-skeletonToggle/loading variants
sk-card, sk-tabs, sk-popover, sk-dialog, sk-drawerComposed surfaces
sk-table-wrap, sk-stepper, sk-list-itemData and navigation patterns
sk-chart, sk-bars, sk-stack, sk-pixelsChart primitives
sk-toast, sk-shellFeedback and app structure
vue
<script setup>
import StudioCatalog from './.vitepress/theme/StudioCatalog.vue'
</script>
<StudioCatalog theme="spark" section="atoms" />

The section prop accepts atoms, molecules, charts, layouts; omit it for the full catalog. Preview controls update local state only. Reuse the classes and tokens in real components; do not ship demonstration handlers as application logic.