style-set-create

Generate v2-conformant StyleSet definitions with typed root properties and nested sub-StyleSets.

3|Updated Mar 12, 2025
One-click install
npx skills add https://github.com/vlossom-ui/vlossom --skill style-set-create
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: style-set-create
Source: https://github.com/vlossom-ui/vlossom/tree/main/.claude/skills/style-set-create
Command: npx skills add https://github.com/vlossom-ui/vlossom --skill style-set-create

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guide helps teams generate StyleSet definitions for new components that align with the v2.0.0+ conventions, ensuring consistent typing, CSS variable exposure, and scalable design patterns across the codebase.

Core Features & Use Cases

  • Conventional Type Systems: Extend CSSProperties to define a typed StyleSet, including root properties and nested sub-objects for slots, elements, and child components.
  • Structured Naming: Enforces clear, semantic names for $X primitives and nested StyleSets to avoid ambiguity.
  • Incremental Adoption: Supports gradual adoption by combining root CSSProperties with optional $X objects and child StyleSets, without breaking existing components.
  • Use Case: When designing a new VsCard, you can declare $header, $body, and $footer sub-StyleSets to centrally control layout, spacing, and theming while keeping the root API stable.

Quick Start

Provide a guided, interactive workflow to generate a Vs<ComponentName>StyleSet that adheres to the v2 conventions.

Frequently Asked Questions about style-set-create

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a Vue design system StyleSet that extends CSSProperties in TypeScript?

To create a Vue design system StyleSet, define TypeScript interfaces that extend CSSProperties, adding root properties and nested sub-objects for slots, elements, and child components. This ensures typed styling and scalable component architecture.

What is a nested sub-StyleSet and when do I need it for component architecture?

A nested sub-StyleSet is a structured style object for specific component slots like headers or footers. You need it when introducing new components to centrally control layout, spacing, and theming while keeping the root API stable.

How do I enforce style conventions and prevent global color token exposure in CSS-in-TypeScript?

You enforce style conventions by generating StyleSet definitions that follow v2 rules, using structured naming for $X primitives and nested styleSets. This approach prevents global color token exposure to maintain design-token integrity.

Does the v2 StyleSet convention support incremental adoption for existing Vue components?

Yes, the v2 StyleSet convention supports incremental adoption by combining root CSSProperties with optional $X objects and child StyleSets. This allows gradual integration without breaking existing components in your design system.

What is the best way to structure $X primitives in a TypeScript StyleSet?

The best way to structure $X primitives is by enforcing clear, semantic names within your TypeScript StyleSet. This avoids ambiguity and maintains design-token integrity by preventing the exposure of global color tokens.

Why should I use nested styleSets instead of flat CSS properties for Vue component slots?

Using nested styleSets for component slots provides structured control over layout, spacing, and theming for elements like headers and bodies. It keeps the root API stable while allowing centralized, scoped styling adjustments.