feat: Add DSS infrastructure, remove legacy admin-ui code
Some checks failed
DSS Project Analysis / dss-context-update (push) Has been cancelled

- Remove legacy admin-ui/js/ vanilla JS components
- Add .dss/ directory with core tokens, skins, themes
- Add Storybook configuration and generated stories
- Add DSS management scripts (dss-services, dss-init, dss-setup, dss-reset)
- Add MCP command definitions for DSS plugin
- Add Figma sync architecture and scripts
- Update pre-commit hooks with documentation validation
- Fix JSON trailing commas in skin files

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
DSS
2025-12-10 22:15:11 -03:00
parent 71c6dc805a
commit 08ce228df1
205 changed files with 65666 additions and 47577 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,837 @@
{
"_meta": {
"description": "shadcn/ui Component Registry - All 59 components with variants and tokens",
"version": "1.0.0",
"source": "https://ui.shadcn.com/docs/components",
"lastUpdated": "2025-12-10"
},
"components": {
"accordion": {
"name": "Accordion",
"category": "data-display",
"description": "A vertically stacked set of interactive headings that reveal content sections",
"radixPrimitive": "@radix-ui/react-accordion",
"variants": {},
"tokens": {
"background": "var(--color-background)",
"border": "var(--color-border)",
"text": "var(--color-foreground)"
}
},
"alert": {
"name": "Alert",
"category": "feedback",
"description": "Displays a callout for user attention",
"variants": {
"variant": ["default", "destructive"]
},
"tokens": {
"background": "var(--color-background)",
"border": "var(--color-border)",
"foreground": "var(--color-foreground)",
"destructive": "var(--color-destructive)"
}
},
"alert-dialog": {
"name": "Alert Dialog",
"category": "overlay",
"description": "A modal dialog that interrupts user flow with important information",
"radixPrimitive": "@radix-ui/react-alert-dialog",
"tokens": {
"overlay": "var(--color-background)/80",
"background": "var(--color-background)",
"border": "var(--color-border)"
}
},
"aspect-ratio": {
"name": "Aspect Ratio",
"category": "layout",
"description": "Displays content with a desired aspect ratio",
"radixPrimitive": "@radix-ui/react-aspect-ratio"
},
"avatar": {
"name": "Avatar",
"category": "data-display",
"description": "An image element with a fallback for user profile images",
"radixPrimitive": "@radix-ui/react-avatar",
"variants": {
"size": ["sm", "md", "lg"]
},
"tokens": {
"background": "var(--color-muted)",
"fallback": "var(--color-muted-foreground)"
}
},
"badge": {
"name": "Badge",
"category": "data-display",
"description": "Displays a badge or label",
"variants": {
"variant": ["default", "secondary", "destructive", "outline"]
},
"tokens": {
"default": {
"background": "var(--color-primary)",
"text": "var(--color-primary-foreground)"
},
"secondary": {
"background": "var(--color-secondary)",
"text": "var(--color-secondary-foreground)"
},
"destructive": {
"background": "var(--color-destructive)",
"text": "var(--color-destructive-foreground)"
},
"outline": {
"border": "var(--color-border)",
"text": "var(--color-foreground)"
}
}
},
"breadcrumb": {
"name": "Breadcrumb",
"category": "navigation",
"description": "Displays the path to the current page in a hierarchy",
"tokens": {
"text": "var(--color-muted-foreground)",
"active": "var(--color-foreground)",
"separator": "var(--color-muted-foreground)"
}
},
"button": {
"name": "Button",
"category": "form",
"description": "Displays a button or a component that looks like a button",
"variants": {
"variant": ["default", "destructive", "outline", "secondary", "ghost", "link"],
"size": ["default", "sm", "lg", "icon", "icon-sm", "icon-lg"]
},
"tokens": {
"default": {
"background": "var(--color-primary)",
"text": "var(--color-primary-foreground)",
"hover": "var(--color-primary)/90"
},
"destructive": {
"background": "var(--color-destructive)",
"text": "var(--color-destructive-foreground)",
"hover": "var(--color-destructive)/90"
},
"outline": {
"border": "var(--color-input)",
"background": "var(--color-background)",
"text": "var(--color-foreground)",
"hover": "var(--color-accent)"
},
"secondary": {
"background": "var(--color-secondary)",
"text": "var(--color-secondary-foreground)",
"hover": "var(--color-secondary)/80"
},
"ghost": {
"text": "var(--color-foreground)",
"hover": "var(--color-accent)"
},
"link": {
"text": "var(--color-primary)"
}
},
"sizing": {
"default": { "height": "2.5rem", "px": "1rem", "py": "0.5rem" },
"sm": { "height": "2rem", "px": "0.75rem" },
"lg": { "height": "3rem", "px": "2rem" },
"icon": { "size": "2.5rem" },
"icon-sm": { "size": "2rem" },
"icon-lg": { "size": "2.75rem" }
}
},
"button-group": {
"name": "Button Group",
"category": "form",
"description": "Groups multiple buttons together",
"tokens": {
"gap": "var(--spacing-1)"
}
},
"calendar": {
"name": "Calendar",
"category": "form",
"description": "A date picker component with monthly/yearly views",
"dependencies": ["react-day-picker"],
"tokens": {
"background": "var(--color-background)",
"text": "var(--color-foreground)",
"selected": "var(--color-primary)",
"today": "var(--color-accent)"
}
},
"card": {
"name": "Card",
"category": "layout",
"description": "Displays a card with header, content, and footer",
"subComponents": ["CardHeader", "CardTitle", "CardDescription", "CardContent", "CardFooter"],
"tokens": {
"background": "var(--color-card)",
"foreground": "var(--color-card-foreground)",
"border": "var(--color-border)",
"shadow": "var(--shadow-sm)"
}
},
"carousel": {
"name": "Carousel",
"category": "data-display",
"description": "A carousel with embla-carousel",
"dependencies": ["embla-carousel-react"],
"tokens": {
"button": "var(--color-background)",
"indicator": "var(--color-muted)"
}
},
"chart": {
"name": "Chart",
"category": "data-display",
"description": "Beautiful charts using Recharts",
"dependencies": ["recharts"],
"tokens": {
"colors": ["var(--chart-1)", "var(--chart-2)", "var(--chart-3)", "var(--chart-4)", "var(--chart-5)"]
}
},
"checkbox": {
"name": "Checkbox",
"category": "form",
"description": "A control that allows toggling between checked and unchecked",
"radixPrimitive": "@radix-ui/react-checkbox",
"tokens": {
"border": "var(--color-primary)",
"checked": "var(--color-primary)",
"checkmark": "var(--color-primary-foreground)"
}
},
"collapsible": {
"name": "Collapsible",
"category": "data-display",
"description": "An interactive component that expands/collapses content",
"radixPrimitive": "@radix-ui/react-collapsible"
},
"combobox": {
"name": "Combobox",
"category": "form",
"description": "Autocomplete input with command palette",
"composedOf": ["command", "popover"],
"tokens": {
"input": "var(--color-input)",
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)"
}
},
"command": {
"name": "Command",
"category": "form",
"description": "Command palette with search and filtering",
"dependencies": ["cmdk"],
"tokens": {
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)",
"separator": "var(--color-border)"
}
},
"context-menu": {
"name": "Context Menu",
"category": "overlay",
"description": "Right-click context menu with keyboard support",
"radixPrimitive": "@radix-ui/react-context-menu",
"tokens": {
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)",
"hover": "var(--color-accent)"
}
},
"data-table": {
"name": "Data Table",
"category": "data-display",
"description": "Powerful table with sorting, filtering, pagination",
"dependencies": ["@tanstack/react-table"],
"composedOf": ["table", "dropdown-menu", "button", "input"],
"tokens": {
"header": "var(--color-muted)",
"row": "var(--color-background)",
"rowHover": "var(--color-muted)/50",
"border": "var(--color-border)"
}
},
"date-picker": {
"name": "Date Picker",
"category": "form",
"description": "A date picker built with calendar and popover",
"composedOf": ["calendar", "popover", "button"],
"tokens": {
"input": "var(--color-input)",
"background": "var(--color-popover)"
}
},
"dialog": {
"name": "Dialog",
"category": "overlay",
"description": "A modal dialog for content display",
"radixPrimitive": "@radix-ui/react-dialog",
"subComponents": ["DialogTrigger", "DialogContent", "DialogHeader", "DialogFooter", "DialogTitle", "DialogDescription"],
"tokens": {
"overlay": "var(--color-background)/80",
"background": "var(--color-background)",
"border": "var(--color-border)"
}
},
"drawer": {
"name": "Drawer",
"category": "overlay",
"description": "A drawer component extending dialog",
"dependencies": ["vaul"],
"tokens": {
"background": "var(--color-background)",
"handle": "var(--color-muted)"
}
},
"dropdown-menu": {
"name": "Dropdown Menu",
"category": "overlay",
"description": "Menu displayed on trigger interaction",
"radixPrimitive": "@radix-ui/react-dropdown-menu",
"tokens": {
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)",
"hover": "var(--color-accent)",
"separator": "var(--color-border)"
}
},
"empty": {
"name": "Empty",
"category": "feedback",
"description": "Empty state display",
"tokens": {
"icon": "var(--color-muted-foreground)",
"text": "var(--color-muted-foreground)"
}
},
"field": {
"name": "Field",
"category": "form",
"description": "Form field wrapper with label and error",
"composedOf": ["label", "input"],
"tokens": {
"label": "var(--color-foreground)",
"error": "var(--color-destructive)"
}
},
"form": {
"name": "Form",
"category": "form",
"description": "Form component with react-hook-form integration",
"dependencies": ["react-hook-form", "@hookform/resolvers", "zod"],
"tokens": {
"label": "var(--color-foreground)",
"description": "var(--color-muted-foreground)",
"error": "var(--color-destructive)"
}
},
"hover-card": {
"name": "Hover Card",
"category": "overlay",
"description": "Content appearing on hover",
"radixPrimitive": "@radix-ui/react-hover-card",
"tokens": {
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)",
"border": "var(--color-border)"
}
},
"input": {
"name": "Input",
"category": "form",
"description": "Text input field",
"tokens": {
"background": "var(--color-background)",
"border": "var(--color-input)",
"text": "var(--color-foreground)",
"placeholder": "var(--color-muted-foreground)",
"focus": "var(--color-ring)"
}
},
"input-group": {
"name": "Input Group",
"category": "form",
"description": "Group of inputs with addons",
"tokens": {
"addon": "var(--color-muted)"
}
},
"input-otp": {
"name": "Input OTP",
"category": "form",
"description": "One-time password input",
"dependencies": ["input-otp"],
"tokens": {
"border": "var(--color-input)",
"focus": "var(--color-ring)"
}
},
"item": {
"name": "Item",
"category": "data-display",
"description": "Generic list item component"
},
"kbd": {
"name": "Kbd",
"category": "data-display",
"description": "Keyboard key display",
"tokens": {
"background": "var(--color-muted)",
"text": "var(--color-muted-foreground)",
"border": "var(--color-border)"
}
},
"label": {
"name": "Label",
"category": "form",
"description": "Text label for form elements",
"radixPrimitive": "@radix-ui/react-label",
"tokens": {
"text": "var(--color-foreground)"
}
},
"menubar": {
"name": "Menubar",
"category": "navigation",
"description": "Horizontal menu with dropdowns",
"radixPrimitive": "@radix-ui/react-menubar",
"tokens": {
"background": "var(--color-background)",
"text": "var(--color-foreground)",
"hover": "var(--color-accent)"
}
},
"native-select": {
"name": "Native Select",
"category": "form",
"description": "Native HTML select element with styling",
"tokens": {
"background": "var(--color-background)",
"border": "var(--color-input)",
"text": "var(--color-foreground)"
}
},
"navigation-menu": {
"name": "Navigation Menu",
"category": "navigation",
"description": "Website navigation with mega menus",
"radixPrimitive": "@radix-ui/react-navigation-menu",
"tokens": {
"background": "var(--color-background)",
"text": "var(--color-foreground)",
"hover": "var(--color-accent)",
"indicator": "var(--color-primary)"
}
},
"pagination": {
"name": "Pagination",
"category": "navigation",
"description": "Page navigation with previous/next",
"tokens": {
"text": "var(--color-foreground)",
"active": "var(--color-primary)",
"disabled": "var(--color-muted-foreground)"
}
},
"popover": {
"name": "Popover",
"category": "overlay",
"description": "Floating content panel",
"radixPrimitive": "@radix-ui/react-popover",
"tokens": {
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)",
"border": "var(--color-border)"
}
},
"progress": {
"name": "Progress",
"category": "feedback",
"description": "Progress indicator bar",
"radixPrimitive": "@radix-ui/react-progress",
"tokens": {
"background": "var(--color-secondary)",
"indicator": "var(--color-primary)"
}
},
"radio-group": {
"name": "Radio Group",
"category": "form",
"description": "Set of mutually exclusive options",
"radixPrimitive": "@radix-ui/react-radio-group",
"tokens": {
"border": "var(--color-primary)",
"checked": "var(--color-primary)"
}
},
"resizable": {
"name": "Resizable",
"category": "layout",
"description": "Resizable panel groups",
"dependencies": ["react-resizable-panels"],
"tokens": {
"handle": "var(--color-border)"
}
},
"scroll-area": {
"name": "Scroll Area",
"category": "layout",
"description": "Custom scrollbar styling",
"radixPrimitive": "@radix-ui/react-scroll-area",
"tokens": {
"thumb": "var(--color-border)",
"track": "var(--color-muted)"
}
},
"select": {
"name": "Select",
"category": "form",
"description": "Custom select dropdown",
"radixPrimitive": "@radix-ui/react-select",
"tokens": {
"trigger": {
"background": "var(--color-background)",
"border": "var(--color-input)",
"text": "var(--color-foreground)"
},
"content": {
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)"
},
"item": {
"hover": "var(--color-accent)"
}
}
},
"separator": {
"name": "Separator",
"category": "layout",
"description": "Visual divider",
"radixPrimitive": "@radix-ui/react-separator",
"variants": {
"orientation": ["horizontal", "vertical"]
},
"tokens": {
"color": "var(--color-border)"
}
},
"sheet": {
"name": "Sheet",
"category": "overlay",
"description": "Side panel overlay",
"radixPrimitive": "@radix-ui/react-dialog",
"variants": {
"side": ["top", "right", "bottom", "left"]
},
"tokens": {
"overlay": "var(--color-background)/80",
"background": "var(--color-background)",
"border": "var(--color-border)"
}
},
"sidebar": {
"name": "Sidebar",
"category": "navigation",
"description": "Application sidebar with collapsible sections",
"tokens": {
"background": "var(--color-sidebar-background)",
"text": "var(--color-sidebar-foreground)",
"hover": "var(--color-sidebar-accent)",
"border": "var(--color-sidebar-border)"
}
},
"skeleton": {
"name": "Skeleton",
"category": "feedback",
"description": "Loading placeholder",
"tokens": {
"background": "var(--color-muted)"
}
},
"slider": {
"name": "Slider",
"category": "form",
"description": "Range slider input",
"radixPrimitive": "@radix-ui/react-slider",
"tokens": {
"track": "var(--color-secondary)",
"range": "var(--color-primary)",
"thumb": "var(--color-background)"
}
},
"sonner": {
"name": "Sonner",
"category": "feedback",
"description": "Toast notifications with sonner",
"dependencies": ["sonner"],
"tokens": {
"background": "var(--color-background)",
"text": "var(--color-foreground)",
"border": "var(--color-border)"
}
},
"spinner": {
"name": "Spinner",
"category": "feedback",
"description": "Loading spinner animation",
"tokens": {
"color": "var(--color-primary)"
}
},
"switch": {
"name": "Switch",
"category": "form",
"description": "Toggle switch control",
"radixPrimitive": "@radix-ui/react-switch",
"tokens": {
"background": "var(--color-input)",
"checked": "var(--color-primary)",
"thumb": "var(--color-background)"
}
},
"table": {
"name": "Table",
"category": "data-display",
"description": "Styled HTML table",
"subComponents": ["TableHeader", "TableBody", "TableFooter", "TableRow", "TableHead", "TableCell", "TableCaption"],
"tokens": {
"header": "var(--color-muted)",
"row": "var(--color-background)",
"rowHover": "var(--color-muted)/50",
"border": "var(--color-border)"
}
},
"tabs": {
"name": "Tabs",
"category": "navigation",
"description": "Tabbed interface",
"radixPrimitive": "@radix-ui/react-tabs",
"tokens": {
"list": "var(--color-muted)",
"trigger": "var(--color-muted-foreground)",
"triggerActive": "var(--color-foreground)",
"content": "var(--color-background)"
}
},
"textarea": {
"name": "Textarea",
"category": "form",
"description": "Multi-line text input",
"tokens": {
"background": "var(--color-background)",
"border": "var(--color-input)",
"text": "var(--color-foreground)",
"placeholder": "var(--color-muted-foreground)",
"focus": "var(--color-ring)"
}
},
"toast": {
"name": "Toast",
"category": "feedback",
"description": "Toast notification component",
"radixPrimitive": "@radix-ui/react-toast",
"variants": {
"variant": ["default", "destructive"]
},
"tokens": {
"background": "var(--color-background)",
"text": "var(--color-foreground)",
"border": "var(--color-border)",
"destructive": "var(--color-destructive)"
}
},
"toggle": {
"name": "Toggle",
"category": "form",
"description": "Two-state button",
"radixPrimitive": "@radix-ui/react-toggle",
"variants": {
"variant": ["default", "outline"],
"size": ["default", "sm", "lg"]
},
"tokens": {
"background": "var(--color-transparent)",
"hover": "var(--color-muted)",
"active": "var(--color-accent)"
}
},
"toggle-group": {
"name": "Toggle Group",
"category": "form",
"description": "Group of toggle buttons",
"radixPrimitive": "@radix-ui/react-toggle-group",
"tokens": {
"background": "var(--color-muted)",
"active": "var(--color-background)"
}
},
"tooltip": {
"name": "Tooltip",
"category": "overlay",
"description": "Informative popup on hover",
"radixPrimitive": "@radix-ui/react-tooltip",
"tokens": {
"background": "var(--color-popover)",
"text": "var(--color-popover-foreground)"
}
},
"typography": {
"name": "Typography",
"category": "data-display",
"description": "Text styling components",
"subComponents": ["H1", "H2", "H3", "H4", "P", "Lead", "Large", "Small", "Muted", "Blockquote", "InlineCode"],
"tokens": {
"heading": "var(--color-foreground)",
"body": "var(--color-foreground)",
"muted": "var(--color-muted-foreground)",
"code": "var(--color-foreground)"
}
}
},
"categories": {
"form": {
"name": "Form Components",
"description": "Input controls and form elements",
"components": ["button", "button-group", "calendar", "checkbox", "combobox", "command", "date-picker", "field", "form", "input", "input-group", "input-otp", "label", "native-select", "radio-group", "select", "slider", "switch", "textarea", "toggle", "toggle-group"]
},
"data-display": {
"name": "Data Display",
"description": "Components for displaying data",
"components": ["accordion", "avatar", "badge", "carousel", "chart", "collapsible", "data-table", "item", "kbd", "table", "typography"]
},
"feedback": {
"name": "Feedback",
"description": "User feedback components",
"components": ["alert", "empty", "progress", "skeleton", "sonner", "spinner", "toast"]
},
"navigation": {
"name": "Navigation",
"description": "Navigation components",
"components": ["breadcrumb", "menubar", "navigation-menu", "pagination", "sidebar", "tabs"]
},
"overlay": {
"name": "Overlay",
"description": "Modal and overlay components",
"components": ["alert-dialog", "context-menu", "dialog", "drawer", "dropdown-menu", "hover-card", "popover", "sheet", "tooltip"]
},
"layout": {
"name": "Layout",
"description": "Layout and structure components",
"components": ["aspect-ratio", "card", "resizable", "scroll-area", "separator"]
}
},
"dependencies": {
"core": ["class-variance-authority", "clsx", "tailwind-merge"],
"radix": [
"@radix-ui/react-accordion",
"@radix-ui/react-alert-dialog",
"@radix-ui/react-aspect-ratio",
"@radix-ui/react-avatar",
"@radix-ui/react-checkbox",
"@radix-ui/react-collapsible",
"@radix-ui/react-context-menu",
"@radix-ui/react-dialog",
"@radix-ui/react-dropdown-menu",
"@radix-ui/react-hover-card",
"@radix-ui/react-label",
"@radix-ui/react-menubar",
"@radix-ui/react-navigation-menu",
"@radix-ui/react-popover",
"@radix-ui/react-progress",
"@radix-ui/react-radio-group",
"@radix-ui/react-scroll-area",
"@radix-ui/react-select",
"@radix-ui/react-separator",
"@radix-ui/react-slider",
"@radix-ui/react-switch",
"@radix-ui/react-tabs",
"@radix-ui/react-toast",
"@radix-ui/react-toggle",
"@radix-ui/react-toggle-group",
"@radix-ui/react-tooltip"
],
"additional": [
"cmdk",
"embla-carousel-react",
"input-otp",
"react-day-picker",
"react-hook-form",
"@hookform/resolvers",
"react-resizable-panels",
"recharts",
"sonner",
"vaul",
"zod",
"@tanstack/react-table"
]
}
}

20
.dss/config/figma.json Normal file
View File

@@ -0,0 +1,20 @@
{
"_meta": {
"description": "Figma configuration - IMMUTABLE (survives resets)",
"protected": true
},
"token": "figd_ScdBk47HlYEItZbQv2CcF9aq-3TfWbBXN3yoRKWA",
"uikit_reference": {
"file_key": "evCZlaeZrP7X20NIViSJbl",
"name": "Obra-shadcn-ui-uikit",
"url": "https://www.figma.com/design/evCZlaeZrP7X20NIViSJbl/Obra-shadcn-ui--uikit-"
},
"files": [
{
"key": "evCZlaeZrP7X20NIViSJbl",
"name": "Obra-shadcn-ui-uikit",
"type": "uikit"
}
],
"teams": []
}

29
.dss/core-hashes.sha256 Normal file
View File

@@ -0,0 +1,29 @@
# DSS Core Structure Hashes
# Generated: 2025-12-10T21:38:48-03:00
# Source: Figma sync pipeline
# DO NOT EDIT MANUALLY
# Format: SHA256 filepath
7738ad7d749558ef8e4a9337b3d14ab851bee8b4b241037e2db0a5b33c61c79e .dss/schema/api.schema.json
e41f535f7a226d37574b880164f338388b52623ccc14af7b2013ef6ab634e318 .dss/schema/components.schema.json
aa5a73c08390433b04ec1f96288cfac573fd5397a2d51774c211db2b8876faf9 .dss/schema/guardrails.schema.json
0d168d0ec2f2c8ab373b02cc42169df45ef5f41e6575493350a5ca4ff6f9797e .dss/schema/skin-contract.json
144642ab5d7b89f73138a9176c65fe8ca05ccf9af1e25b3f9589df37c04c8d70 .dss/schema/tokens.schema.json
57a08fcb06fc9f23617875ec5a28190cae6e5a4b1c66a89072f581405b53d135 .dss/schema/workflows.schema.json
ef4e720e445987685683a5d76ff2a81efae36e67a6ac9e1b0801775b87c30afd dss-claude-plugin/core/skins/base.json
2a709577c30111861b8274f4fe115380436ed943cc6ae3e39140d8a16ccf4bad dss-claude-plugin/core/skins/classic.json
5f356bd862f963e2efd06f2b7922792bca795d45516c45563c0371b90b91c2e1 dss-claude-plugin/core/skins/workbench.json
3242ccb81ca30197e78251453f4594c271afe02502204900329f03ee92a9b7a3 dss/core_tokens/tokens.json
d2f926b311963cbf5748f99f6fde1f88a04efd0533ea73a90318a78a53dfeafd .dss/data/_system/components.json
6ea9af5cc6ea337e3128b7c4395888f51aa5b4208afcc6a77fd4b465efa2222f .dss/data/_system/styles.json
d972e3ebdd7ae2e213a3ae79064a6a0d0aa10bfa20e5dfcbe907f2811ebb2593 .dss/data/_system/figma-components.json
75ecdaeee10d7b0c4383f08b26384fbdf0ac381c99f89cd21ea6b3e4895e3b9d .dss/data/_system/style-dictionary.config.json
b9beb00ffd505a040543051544895fd47bfc948cb39f8c7827656872ab236501 .dss/data/_system/themes/_tokens.scss
b5e5f0c1fa400c0b681caca5aacbfc9e67f44054549af3a43baddf864255b764 .dss/data/_system/themes/tokens.json
76a0bead01ab199680ec88e06e2ebc17e1962dc7bca8b288a62c3922f9d9e9a7 .dss/data/_system/themes/tokens.css
0a0d403395d0d87eb9dd70f28c91d69f7637eedb1e2b562a51185d7dfbf3ebfd .dss/data/_system/analysis-storybook.json
3242ccb81ca30197e78251453f4594c271afe02502204900329f03ee92a9b7a3 .dss/data/_system/tokens/base.json
03df370af13ad41d72635e82e81bfbf85f3ee2e5cbe3e66d27222e612c67568b .dss/data/_system/tokens/resolved-meta.json
9175c3bf0581b652d10704a2d85f1ec9fc68809e90850c01d9acd1d571618a6a .dss/data/_system/tokens/tokens.json
4321119e41b6763a49d654978161b02dead66116ecca6c7f215e021cacfeeab1 .dss/data/_system/ds.config.json
f74658540c8d2838e17de647f0c788de674e3d95dcebc89bfa103f6dc656487c .dss/data/_system/analysis-admin-ui.json

503
.dss/core/primitives.json Normal file
View File

@@ -0,0 +1,503 @@
{
"_meta": {
"description": "Core design primitives - raw values from Tailwind/shadcn palette",
"layer": "core",
"immutable": true,
"version": "1.1.0",
"source": "tailwindcss + shadcn/ui"
},
"color": {
"_category": "Color Primitives",
"base": {
"_description": "Base colors",
"white": { "value": "#ffffff" },
"black": { "value": "#000000" },
"transparent": { "value": "transparent" }
},
"neutral": {
"_description": "Neutral gray scales",
"slate": {
"50": { "value": "#f8fafc" },
"100": { "value": "#f1f5f9" },
"200": { "value": "#e2e8f0" },
"300": { "value": "#cbd5e1" },
"400": { "value": "#94a3b8" },
"500": { "value": "#64748b" },
"600": { "value": "#475569" },
"700": { "value": "#334155" },
"800": { "value": "#1e293b" },
"900": { "value": "#0f172a" },
"950": { "value": "#020617" }
},
"gray": {
"50": { "value": "#f9fafb" },
"100": { "value": "#f3f4f6" },
"200": { "value": "#e5e7eb" },
"300": { "value": "#d1d5db" },
"400": { "value": "#9ca3af" },
"500": { "value": "#6b7280" },
"600": { "value": "#4b5563" },
"700": { "value": "#374151" },
"800": { "value": "#1f2937" },
"900": { "value": "#111827" },
"950": { "value": "#030712" }
},
"zinc": {
"50": { "value": "#fafafa" },
"100": { "value": "#f4f4f5" },
"200": { "value": "#e4e4e7" },
"300": { "value": "#d4d4d8" },
"400": { "value": "#a1a1aa" },
"500": { "value": "#71717a" },
"600": { "value": "#52525b" },
"700": { "value": "#3f3f46" },
"800": { "value": "#27272a" },
"900": { "value": "#18181b" },
"950": { "value": "#09090b" }
},
"neutral": {
"50": { "value": "#fafafa" },
"100": { "value": "#f5f5f5" },
"200": { "value": "#e5e5e5" },
"300": { "value": "#d4d4d4" },
"400": { "value": "#a3a3a3" },
"500": { "value": "#737373" },
"600": { "value": "#525252" },
"700": { "value": "#404040" },
"800": { "value": "#262626" },
"900": { "value": "#171717" },
"950": { "value": "#0a0a0a" }
},
"stone": {
"50": { "value": "#fafaf9" },
"100": { "value": "#f5f5f4" },
"200": { "value": "#e7e5e4" },
"300": { "value": "#d6d3d1" },
"400": { "value": "#a8a29e" },
"500": { "value": "#78716c" },
"600": { "value": "#57534e" },
"700": { "value": "#44403c" },
"800": { "value": "#292524" },
"900": { "value": "#1c1917" },
"950": { "value": "#0c0a09" }
}
},
"semantic": {
"_description": "Semantic color scales",
"red": {
"50": { "value": "#fef2f2" },
"100": { "value": "#fee2e2" },
"200": { "value": "#fecaca" },
"300": { "value": "#fca5a5" },
"400": { "value": "#f87171" },
"500": { "value": "#ef4444" },
"600": { "value": "#dc2626" },
"700": { "value": "#b91c1c" },
"800": { "value": "#991b1b" },
"900": { "value": "#7f1d1d" },
"950": { "value": "#450a0a" }
},
"orange": {
"50": { "value": "#fff7ed" },
"100": { "value": "#ffedd5" },
"200": { "value": "#fed7aa" },
"300": { "value": "#fdba74" },
"400": { "value": "#fb923c" },
"500": { "value": "#f97316" },
"600": { "value": "#ea580c" },
"700": { "value": "#c2410c" },
"800": { "value": "#9a3412" },
"900": { "value": "#7c2d12" },
"950": { "value": "#431407" }
},
"amber": {
"50": { "value": "#fffbeb" },
"100": { "value": "#fef3c7" },
"200": { "value": "#fde68a" },
"300": { "value": "#fcd34d" },
"400": { "value": "#fbbf24" },
"500": { "value": "#f59e0b" },
"600": { "value": "#d97706" },
"700": { "value": "#b45309" },
"800": { "value": "#92400e" },
"900": { "value": "#78350f" },
"950": { "value": "#451a03" }
},
"yellow": {
"50": { "value": "#fefce8" },
"100": { "value": "#fef9c3" },
"200": { "value": "#fef08a" },
"300": { "value": "#fde047" },
"400": { "value": "#facc15" },
"500": { "value": "#eab308" },
"600": { "value": "#ca8a04" },
"700": { "value": "#a16207" },
"800": { "value": "#854d0e" },
"900": { "value": "#713f12" },
"950": { "value": "#422006" }
},
"lime": {
"50": { "value": "#f7fee7" },
"100": { "value": "#ecfccb" },
"200": { "value": "#d9f99d" },
"300": { "value": "#bef264" },
"400": { "value": "#a3e635" },
"500": { "value": "#84cc16" },
"600": { "value": "#65a30d" },
"700": { "value": "#4d7c0f" },
"800": { "value": "#3f6212" },
"900": { "value": "#365314" },
"950": { "value": "#1a2e05" }
},
"green": {
"50": { "value": "#f0fdf4" },
"100": { "value": "#dcfce7" },
"200": { "value": "#bbf7d0" },
"300": { "value": "#86efac" },
"400": { "value": "#4ade80" },
"500": { "value": "#22c55e" },
"600": { "value": "#16a34a" },
"700": { "value": "#15803d" },
"800": { "value": "#166534" },
"900": { "value": "#14532d" },
"950": { "value": "#052e16" }
},
"emerald": {
"50": { "value": "#ecfdf5" },
"100": { "value": "#d1fae5" },
"200": { "value": "#a7f3d0" },
"300": { "value": "#6ee7b7" },
"400": { "value": "#34d399" },
"500": { "value": "#10b981" },
"600": { "value": "#059669" },
"700": { "value": "#047857" },
"800": { "value": "#065f46" },
"900": { "value": "#064e3b" },
"950": { "value": "#022c22" }
},
"teal": {
"50": { "value": "#f0fdfa" },
"100": { "value": "#ccfbf1" },
"200": { "value": "#99f6e4" },
"300": { "value": "#5eead4" },
"400": { "value": "#2dd4bf" },
"500": { "value": "#14b8a6" },
"600": { "value": "#0d9488" },
"700": { "value": "#0f766e" },
"800": { "value": "#115e59" },
"900": { "value": "#134e4a" },
"950": { "value": "#042f2e" }
},
"cyan": {
"50": { "value": "#ecfeff" },
"100": { "value": "#cffafe" },
"200": { "value": "#a5f3fc" },
"300": { "value": "#67e8f9" },
"400": { "value": "#22d3ee" },
"500": { "value": "#06b6d4" },
"600": { "value": "#0891b2" },
"700": { "value": "#0e7490" },
"800": { "value": "#155e75" },
"900": { "value": "#164e63" },
"950": { "value": "#083344" }
},
"sky": {
"50": { "value": "#f0f9ff" },
"100": { "value": "#e0f2fe" },
"200": { "value": "#bae6fd" },
"300": { "value": "#7dd3fc" },
"400": { "value": "#38bdf8" },
"500": { "value": "#0ea5e9" },
"600": { "value": "#0284c7" },
"700": { "value": "#0369a1" },
"800": { "value": "#075985" },
"900": { "value": "#0c4a6e" },
"950": { "value": "#082f49" }
},
"blue": {
"50": { "value": "#eff6ff" },
"100": { "value": "#dbeafe" },
"200": { "value": "#bfdbfe" },
"300": { "value": "#93c5fd" },
"400": { "value": "#60a5fa" },
"500": { "value": "#3b82f6" },
"600": { "value": "#2563eb" },
"700": { "value": "#1d4ed8" },
"800": { "value": "#1e40af" },
"900": { "value": "#1e3a8a" },
"950": { "value": "#172554" }
},
"indigo": {
"50": { "value": "#eef2ff" },
"100": { "value": "#e0e7ff" },
"200": { "value": "#c7d2fe" },
"300": { "value": "#a5b4fc" },
"400": { "value": "#818cf8" },
"500": { "value": "#6366f1" },
"600": { "value": "#4f46e5" },
"700": { "value": "#4338ca" },
"800": { "value": "#3730a3" },
"900": { "value": "#312e81" },
"950": { "value": "#1e1b4b" }
},
"violet": {
"50": { "value": "#f5f3ff" },
"100": { "value": "#ede9fe" },
"200": { "value": "#ddd6fe" },
"300": { "value": "#c4b5fd" },
"400": { "value": "#a78bfa" },
"500": { "value": "#8b5cf6" },
"600": { "value": "#7c3aed" },
"700": { "value": "#6d28d9" },
"800": { "value": "#5b21b6" },
"900": { "value": "#4c1d95" },
"950": { "value": "#2e1065" }
},
"purple": {
"50": { "value": "#faf5ff" },
"100": { "value": "#f3e8ff" },
"200": { "value": "#e9d5ff" },
"300": { "value": "#d8b4fe" },
"400": { "value": "#c084fc" },
"500": { "value": "#a855f7" },
"600": { "value": "#9333ea" },
"700": { "value": "#7e22ce" },
"800": { "value": "#6b21a8" },
"900": { "value": "#581c87" },
"950": { "value": "#3b0764" }
},
"fuchsia": {
"50": { "value": "#fdf4ff" },
"100": { "value": "#fae8ff" },
"200": { "value": "#f5d0fe" },
"300": { "value": "#f0abfc" },
"400": { "value": "#e879f9" },
"500": { "value": "#d946ef" },
"600": { "value": "#c026d3" },
"700": { "value": "#a21caf" },
"800": { "value": "#86198f" },
"900": { "value": "#701a75" },
"950": { "value": "#4a044e" }
},
"pink": {
"50": { "value": "#fdf2f8" },
"100": { "value": "#fce7f3" },
"200": { "value": "#fbcfe8" },
"300": { "value": "#f9a8d4" },
"400": { "value": "#f472b6" },
"500": { "value": "#ec4899" },
"600": { "value": "#db2777" },
"700": { "value": "#be185d" },
"800": { "value": "#9d174d" },
"900": { "value": "#831843" },
"950": { "value": "#500724" }
},
"rose": {
"50": { "value": "#fff1f2" },
"100": { "value": "#ffe4e6" },
"200": { "value": "#fecdd3" },
"300": { "value": "#fda4af" },
"400": { "value": "#fb7185" },
"500": { "value": "#f43f5e" },
"600": { "value": "#e11d48" },
"700": { "value": "#be123c" },
"800": { "value": "#9f1239" },
"900": { "value": "#881337" },
"950": { "value": "#4c0519" }
}
}
},
"spacing": {
"_category": "Spacing Scale",
"_description": "Based on 4px grid (0.25rem = 4px)",
"0": { "value": "0" },
"px": { "value": "1px" },
"0.5": { "value": "0.125rem", "_comment": "2px" },
"1": { "value": "0.25rem", "_comment": "4px" },
"1.5": { "value": "0.375rem", "_comment": "6px" },
"2": { "value": "0.5rem", "_comment": "8px" },
"2.5": { "value": "0.625rem", "_comment": "10px" },
"3": { "value": "0.75rem", "_comment": "12px" },
"3.5": { "value": "0.875rem", "_comment": "14px" },
"4": { "value": "1rem", "_comment": "16px" },
"5": { "value": "1.25rem", "_comment": "20px" },
"6": { "value": "1.5rem", "_comment": "24px" },
"7": { "value": "1.75rem", "_comment": "28px" },
"8": { "value": "2rem", "_comment": "32px" },
"9": { "value": "2.25rem", "_comment": "36px" },
"10": { "value": "2.5rem", "_comment": "40px" },
"11": { "value": "2.75rem", "_comment": "44px" },
"12": { "value": "3rem", "_comment": "48px" },
"14": { "value": "3.5rem", "_comment": "56px" },
"16": { "value": "4rem", "_comment": "64px" },
"20": { "value": "5rem", "_comment": "80px" },
"24": { "value": "6rem", "_comment": "96px" },
"28": { "value": "7rem", "_comment": "112px" },
"32": { "value": "8rem", "_comment": "128px" },
"36": { "value": "9rem", "_comment": "144px" },
"40": { "value": "10rem", "_comment": "160px" },
"44": { "value": "11rem", "_comment": "176px" },
"48": { "value": "12rem", "_comment": "192px" },
"52": { "value": "13rem", "_comment": "208px" },
"56": { "value": "14rem", "_comment": "224px" },
"60": { "value": "15rem", "_comment": "240px" },
"64": { "value": "16rem", "_comment": "256px" },
"72": { "value": "18rem", "_comment": "288px" },
"80": { "value": "20rem", "_comment": "320px" },
"96": { "value": "24rem", "_comment": "384px" }
},
"radius": {
"_category": "Border Radius",
"none": { "value": "0" },
"sm": { "value": "0.125rem", "_comment": "2px" },
"default": { "value": "0.25rem", "_comment": "4px" },
"md": { "value": "0.375rem", "_comment": "6px" },
"lg": { "value": "0.5rem", "_comment": "8px" },
"xl": { "value": "0.75rem", "_comment": "12px" },
"2xl": { "value": "1rem", "_comment": "16px" },
"3xl": { "value": "1.5rem", "_comment": "24px" },
"full": { "value": "9999px" }
},
"shadow": {
"_category": "Box Shadows",
"none": { "value": "none" },
"xs": { "value": "0 1px 2px 0 rgba(0, 0, 0, 0.05)" },
"sm": { "value": "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)" },
"default": { "value": "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)" },
"md": { "value": "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)" },
"lg": { "value": "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)" },
"xl": { "value": "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)" },
"2xl": { "value": "0 25px 50px -12px rgba(0, 0, 0, 0.25)" },
"inner": { "value": "inset 0 2px 4px 0 rgba(0, 0, 0, 0.05)" }
},
"font": {
"_category": "Typography",
"family": {
"_description": "Font families",
"sans": { "value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif" },
"serif": { "value": "ui-serif, Georgia, Cambria, 'Times New Roman', Times, serif" },
"mono": { "value": "ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace" }
},
"size": {
"_description": "Font sizes",
"xs": { "value": "0.75rem", "_comment": "12px", "lineHeight": "1rem" },
"sm": { "value": "0.875rem", "_comment": "14px", "lineHeight": "1.25rem" },
"base": { "value": "1rem", "_comment": "16px", "lineHeight": "1.5rem" },
"lg": { "value": "1.125rem", "_comment": "18px", "lineHeight": "1.75rem" },
"xl": { "value": "1.25rem", "_comment": "20px", "lineHeight": "1.75rem" },
"2xl": { "value": "1.5rem", "_comment": "24px", "lineHeight": "2rem" },
"3xl": { "value": "1.875rem", "_comment": "30px", "lineHeight": "2.25rem" },
"4xl": { "value": "2.25rem", "_comment": "36px", "lineHeight": "2.5rem" },
"5xl": { "value": "3rem", "_comment": "48px", "lineHeight": "1" },
"6xl": { "value": "3.75rem", "_comment": "60px", "lineHeight": "1" },
"7xl": { "value": "4.5rem", "_comment": "72px", "lineHeight": "1" },
"8xl": { "value": "6rem", "_comment": "96px", "lineHeight": "1" },
"9xl": { "value": "8rem", "_comment": "128px", "lineHeight": "1" }
},
"weight": {
"_description": "Font weights",
"thin": { "value": "100" },
"extralight": { "value": "200" },
"light": { "value": "300" },
"normal": { "value": "400" },
"medium": { "value": "500" },
"semibold": { "value": "600" },
"bold": { "value": "700" },
"extrabold": { "value": "800" },
"black": { "value": "900" }
},
"lineHeight": {
"_description": "Line heights",
"none": { "value": "1" },
"tight": { "value": "1.25" },
"snug": { "value": "1.375" },
"normal": { "value": "1.5" },
"relaxed": { "value": "1.625" },
"loose": { "value": "2" }
},
"letterSpacing": {
"_description": "Letter spacing",
"tighter": { "value": "-0.05em" },
"tight": { "value": "-0.025em" },
"normal": { "value": "0" },
"wide": { "value": "0.025em" },
"wider": { "value": "0.05em" },
"widest": { "value": "0.1em" }
}
},
"animation": {
"_category": "Motion & Animation",
"duration": {
"0": { "value": "0ms" },
"75": { "value": "75ms" },
"100": { "value": "100ms" },
"150": { "value": "150ms" },
"200": { "value": "200ms" },
"300": { "value": "300ms" },
"500": { "value": "500ms" },
"700": { "value": "700ms" },
"1000": { "value": "1000ms" }
},
"easing": {
"linear": { "value": "linear" },
"in": { "value": "cubic-bezier(0.4, 0, 1, 1)" },
"out": { "value": "cubic-bezier(0, 0, 0.2, 1)" },
"in-out": { "value": "cubic-bezier(0.4, 0, 0.2, 1)" }
}
},
"breakpoint": {
"_category": "Responsive Breakpoints",
"sm": { "value": "640px" },
"md": { "value": "768px" },
"lg": { "value": "1024px" },
"xl": { "value": "1280px" },
"2xl": { "value": "1536px" }
},
"zIndex": {
"_category": "Z-Index Scale",
"0": { "value": "0" },
"10": { "value": "10" },
"20": { "value": "20" },
"30": { "value": "30" },
"40": { "value": "40" },
"50": { "value": "50" },
"auto": { "value": "auto" }
},
"opacity": {
"_category": "Opacity Scale",
"0": { "value": "0" },
"5": { "value": "0.05" },
"10": { "value": "0.1" },
"20": { "value": "0.2" },
"25": { "value": "0.25" },
"30": { "value": "0.3" },
"40": { "value": "0.4" },
"50": { "value": "0.5" },
"60": { "value": "0.6" },
"70": { "value": "0.7" },
"75": { "value": "0.75" },
"80": { "value": "0.8" },
"90": { "value": "0.9" },
"95": { "value": "0.95" },
"100": { "value": "1" }
}
}

View File

@@ -0,0 +1 @@
{"target":"admin-ui","analyzed_at":"2025-12-10T21:38:46-03:00","stats":{"js":168,"css":20,"html":4},"status":"analyzed"}

View File

@@ -0,0 +1 @@
{"target":"storybook","analyzed_at":"2025-12-10T21:38:46-03:00","stats":{"stories":14,"mdx":0},"status":"analyzed"}

View File

@@ -0,0 +1,373 @@
[
{
"name": "Accordion",
"key": "842:49174",
"description": "Component page: Accordion",
"properties": {},
"variants": []
},
{
"name": "Alert",
"key": "842:44439",
"description": "Component page: Alert",
"properties": {},
"variants": []
},
{
"name": "Alert Dialog",
"key": "842:51942",
"description": "Component page: Alert Dialog",
"properties": {},
"variants": []
},
{
"name": "Aspect Ratio",
"key": "842:52053",
"description": "Component page: Aspect Ratio",
"properties": {},
"variants": []
},
{
"name": "Avatar",
"key": "842:44440",
"description": "Component page: Avatar",
"properties": {},
"variants": []
},
{
"name": "Badge",
"key": "842:44441",
"description": "Component page: Badge",
"properties": {},
"variants": []
},
{
"name": "Breadcrumb",
"key": "842:51940",
"description": "Component page: Breadcrumb",
"properties": {},
"variants": []
},
{
"name": "Button",
"key": "842:44442",
"description": "Component page: Button",
"properties": {},
"variants": []
},
{
"name": "Button Group",
"key": "842:44448",
"description": "Component page: Button Group",
"properties": {},
"variants": []
},
{
"name": "Card",
"key": "842:49175",
"description": "Component page: Card",
"properties": {},
"variants": []
},
{
"name": "Carousel",
"key": "842:52056",
"description": "Component page: Carousel",
"properties": {},
"variants": []
},
{
"name": "Charts",
"key": "842:52058",
"description": "Component page: Charts",
"properties": {},
"variants": []
},
{
"name": "Checkbox",
"key": "842:49183",
"description": "Component page: Checkbox",
"properties": {},
"variants": []
},
{
"name": "Command",
"key": "842:52048",
"description": "Component page: Command",
"properties": {},
"variants": []
},
{
"name": "Data Table",
"key": "842:49179",
"description": "Component page: Data Table",
"properties": {},
"variants": []
},
{
"name": "Date Picker",
"key": "842:49186",
"description": "Component page: Date Picker",
"properties": {},
"variants": []
},
{
"name": "Dialog",
"key": "842:51941",
"description": "Component page: Dialog",
"properties": {},
"variants": []
},
{
"name": "Drawer",
"key": "842:52050",
"description": "Component page: Drawer",
"properties": {},
"variants": []
},
{
"name": "Empty",
"key": "842:44451",
"description": "Component page: Empty",
"properties": {},
"variants": []
},
{
"name": "Field",
"key": "842:49181",
"description": "Component page: Field",
"properties": {},
"variants": []
},
{
"name": "Hover Card",
"key": "842:52051",
"description": "Component page: Hover Card",
"properties": {},
"variants": []
},
{
"name": "Icon Button",
"key": "842:44443",
"description": "Component page: Icon Button",
"properties": {},
"variants": []
},
{
"name": "Input",
"key": "842:49172",
"description": "Component page: Input",
"properties": {},
"variants": []
},
{
"name": "Input File",
"key": "842:49173",
"description": "Component page: Input File",
"properties": {},
"variants": []
},
{
"name": "Input Group",
"key": "885:2",
"description": "Component page: Input Group",
"properties": {},
"variants": []
},
{
"name": "Input OTP",
"key": "842:49177",
"description": "Component page: Input OTP",
"properties": {},
"variants": []
},
{
"name": "Item",
"key": "885:3081",
"description": "Component page: Item",
"properties": {},
"variants": []
},
{
"name": "Kbd",
"key": "842:49171",
"description": "Component page: Kbd",
"properties": {},
"variants": []
},
{
"name": "Label",
"key": "842:49170",
"description": "Component page: Label",
"properties": {},
"variants": []
},
{
"name": "Link Button",
"key": "842:44446",
"description": "Component page: Link Button",
"properties": {},
"variants": []
},
{
"name": "Loading Button",
"key": "842:44444",
"description": "Component page: Loading Button",
"properties": {},
"variants": []
},
{
"name": "Navigation Menu",
"key": "842:51938",
"description": "Component page: Navigation Menu",
"properties": {},
"variants": []
},
{
"name": "Pagination",
"key": "842:51939",
"description": "Component page: Pagination",
"properties": {},
"variants": []
},
{
"name": "Progress",
"key": "842:49187",
"description": "Component page: Progress",
"properties": {},
"variants": []
},
{
"name": "Radio",
"key": "842:49182",
"description": "Component page: Radio",
"properties": {},
"variants": []
},
{
"name": "Resizable",
"key": "842:52055",
"description": "Component page: Resizable",
"properties": {},
"variants": []
},
{
"name": "Scroll Area",
"key": "842:52054",
"description": "Component page: Scroll Area",
"properties": {},
"variants": []
},
{
"name": "Select & Combobox",
"key": "842:49185",
"description": "Component page: Select & Combobox",
"properties": {},
"variants": []
},
{
"name": "Separator",
"key": "842:49137",
"description": "Component page: Separator",
"properties": {},
"variants": []
},
{
"name": "Sheet",
"key": "842:52049",
"description": "Component page: Sheet",
"properties": {},
"variants": []
},
{
"name": "Sidebar",
"key": "842:51929",
"description": "Component page: Sidebar",
"properties": {},
"variants": []
},
{
"name": "Skeleton",
"key": "842:52052",
"description": "Component page: Skeleton",
"properties": {},
"variants": []
},
{
"name": "Slider",
"key": "842:49188",
"description": "Component page: Slider",
"properties": {},
"variants": []
},
{
"name": "Sonner",
"key": "842:51943",
"description": "Component page: Sonner",
"properties": {},
"variants": []
},
{
"name": "Spinner",
"key": "842:44445",
"description": "Component page: Spinner",
"properties": {},
"variants": []
},
{
"name": "Switch",
"key": "842:49184",
"description": "Component page: Switch",
"properties": {},
"variants": []
},
{
"name": "Table",
"key": "842:49176",
"description": "Component page: Table",
"properties": {},
"variants": []
},
{
"name": "Tabs",
"key": "842:50580",
"description": "Component page: Tabs",
"properties": {},
"variants": []
},
{
"name": "Textarea",
"key": "842:49180",
"description": "Component page: Textarea",
"properties": {},
"variants": []
},
{
"name": "Toggle & Toggle Group",
"key": "842:44447",
"description": "Component page: Toggle & Toggle Group",
"properties": {},
"variants": []
},
{
"name": "Tooltip",
"key": "842:44449",
"description": "Component page: Tooltip",
"properties": {},
"variants": []
},
{
"name": "Screen examples",
"key": "683:34149",
"description": "Component page: Screen examples",
"properties": {},
"variants": []
},
{
"name": "Internal Components",
"key": "842:44452",
"description": "Component page: Internal Components",
"properties": {},
"variants": []
}
]

View File

@@ -0,0 +1,33 @@
{
"name": "dss-system",
"version": "1.0.0",
"description": "DSS internal design system (dogfooding)",
"skin": "base",
"base_theme": "light",
"targets": [
{
"name": "admin-ui",
"path": "./admin-ui",
"type": "web-app",
"framework": "vanilla"
},
{
"name": "storybook",
"path": "./storybook",
"type": "documentation",
"framework": "storybook"
}
],
"output": {
"tokens_dir": "./.dss/data/_system/tokens",
"themes_dir": "./.dss/data/_system/themes",
"components_dir": "./.dss/data/_system/components",
"formats": ["css", "scss", "json"]
},
"figma": {
"files": [],
"auto_sync": false
},
"created_at": "$(date -Iseconds)",
"updated_at": "$(date -Iseconds)"
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,20 @@
{
"source": ["tokens/tokens.json"],
"platforms": {
"css": {
"transformGroup": "css",
"buildPath": "themes/",
"files": [{"destination": "tokens.css", "format": "css/variables"}]
},
"scss": {
"transformGroup": "scss",
"buildPath": "themes/",
"files": [{"destination": "_tokens.scss", "format": "scss/variables"}]
},
"json": {
"transformGroup": "js",
"buildPath": "themes/",
"files": [{"destination": "tokens.json", "format": "json/flat"}]
}
}
}

View File

@@ -0,0 +1,408 @@
{
"all": [
{
"name": "heading 1",
"key": "6:83",
"type": "TEXT",
"properties": {}
},
{
"name": "heading 2",
"key": "6:84",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/regular",
"key": "7:129",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/bold",
"key": "22:7579",
"type": "TEXT",
"properties": {}
},
{
"name": "heading 3",
"key": "6:85",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/bold",
"key": "22:7578",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/regular",
"key": "6:87",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/regular",
"key": "19:5809",
"type": "TEXT",
"properties": {}
},
{
"name": "heading 4",
"key": "6:86",
"type": "TEXT",
"properties": {}
},
{
"name": "monospaced",
"key": "199:32930",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/medium",
"key": "869:27329",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/medium",
"key": "869:27330",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/bold",
"key": "22:9520",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/medium",
"key": "869:27331",
"type": "TEXT",
"properties": {}
},
{
"name": "shadow-sm",
"key": "9:772",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-lg",
"key": "14:1579",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-2xs",
"key": "16:1667",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-xs",
"key": "16:1668",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-md",
"key": "16:1669",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-xl",
"key": "16:1670",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-2xl",
"key": "16:1671",
"type": "EFFECT",
"properties": {}
},
{
"name": "focus ring",
"key": "147:11610",
"type": "EFFECT",
"properties": {}
},
{
"name": "focus ring error",
"key": "176:25107",
"type": "EFFECT",
"properties": {}
},
{
"name": "focus ring sidebar",
"key": "653:49231",
"type": "EFFECT",
"properties": {}
},
{
"name": "paragraph small/medium",
"key": "363:28805",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/regular",
"key": "363:28952",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/bold",
"key": "862:71716",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/bold",
"key": "862:71791",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/regular",
"key": "862:73098",
"type": "TEXT",
"properties": {}
},
{
"name": "shadow-xs",
"key": "862:73052",
"type": "EFFECT",
"properties": {}
},
{
"name": "paragraph small/bold",
"key": "862:73054",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/regular",
"key": "862:71752",
"type": "TEXT",
"properties": {}
},
{
"name": "shadow-sm",
"key": "862:71996",
"type": "EFFECT",
"properties": {}
}
],
"by_type": {
"TEXT": [
{
"name": "heading 1",
"key": "6:83",
"type": "TEXT",
"properties": {}
},
{
"name": "heading 2",
"key": "6:84",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/regular",
"key": "7:129",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/bold",
"key": "22:7579",
"type": "TEXT",
"properties": {}
},
{
"name": "heading 3",
"key": "6:85",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/bold",
"key": "22:7578",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/regular",
"key": "6:87",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/regular",
"key": "19:5809",
"type": "TEXT",
"properties": {}
},
{
"name": "heading 4",
"key": "6:86",
"type": "TEXT",
"properties": {}
},
{
"name": "monospaced",
"key": "199:32930",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/medium",
"key": "869:27329",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/medium",
"key": "869:27330",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/bold",
"key": "22:9520",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/medium",
"key": "869:27331",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/medium",
"key": "363:28805",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/regular",
"key": "363:28952",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph/bold",
"key": "862:71716",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/bold",
"key": "862:71791",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph mini/regular",
"key": "862:73098",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/bold",
"key": "862:73054",
"type": "TEXT",
"properties": {}
},
{
"name": "paragraph small/regular",
"key": "862:71752",
"type": "TEXT",
"properties": {}
}
],
"FILL": [],
"EFFECT": [
{
"name": "shadow-sm",
"key": "9:772",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-lg",
"key": "14:1579",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-2xs",
"key": "16:1667",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-xs",
"key": "16:1668",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-md",
"key": "16:1669",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-xl",
"key": "16:1670",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-2xl",
"key": "16:1671",
"type": "EFFECT",
"properties": {}
},
{
"name": "focus ring",
"key": "147:11610",
"type": "EFFECT",
"properties": {}
},
{
"name": "focus ring error",
"key": "176:25107",
"type": "EFFECT",
"properties": {}
},
{
"name": "focus ring sidebar",
"key": "653:49231",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-xs",
"key": "862:73052",
"type": "EFFECT",
"properties": {}
},
{
"name": "shadow-sm",
"key": "862:71996",
"type": "EFFECT",
"properties": {}
}
],
"GRID": []
}
}

View File

@@ -0,0 +1,99 @@
// Do not edit directly, this file was auto-generated.
$color-background: #ffffff;
$color-foreground: #09090b;
$color-card: #ffffff;
$color-card-foreground: #09090b;
$color-popover: #ffffff;
$color-popover-foreground: #09090b;
$color-primary: #18181b; // zinc-900 - brand primary
$color-primary-foreground: #fafafa; // zinc-50
$color-secondary: #f4f4f5;
$color-secondary-foreground: #18181b;
$color-muted: #f4f4f5;
$color-muted-foreground: #71717a;
$color-accent: #f4f4f5;
$color-accent-foreground: #18181b;
$color-destructive: #ef4444;
$color-destructive-foreground: #fafafa;
$color-border: #e4e4e7;
$color-input: #e4e4e7;
$color-ring: #18181b; // matches primary
$color-dark-background: #09090b;
$color-dark-foreground: #fafafa;
$color-dark-card: #09090b;
$color-dark-card-foreground: #fafafa;
$color-dark-popover: #09090b;
$color-dark-popover-foreground: #fafafa;
$color-dark-primary: #fafafa;
$color-dark-primary-foreground: #18181b;
$color-dark-secondary: #27272a;
$color-dark-secondary-foreground: #fafafa;
$color-dark-muted: #27272a;
$color-dark-muted-foreground: #a1a1aa;
$color-dark-accent: #27272a;
$color-dark-accent-foreground: #fafafa;
$color-dark-destructive: #7f1d1d;
$color-dark-destructive-foreground: #fafafa;
$color-dark-border: #27272a;
$color-dark-input: #27272a;
$color-dark-ring: #d4d4d8;
$radius-sm: 0.125rem;
$radius-md: 0.375rem;
$radius-lg: 0.5rem; // default border radius for cards
$radius-xl: 0.75rem;
$radius-full: 9999px;
$effect-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
$effect-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
$effect-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
$effect-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
$effect-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
$effect-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
$effect-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.5);
$spacing-0: 0;
$spacing-1: 0.25rem;
$spacing-2: 0.5rem;
$spacing-3: 0.75rem;
$spacing-4: 1rem;
$spacing-5: 1.25rem;
$spacing-6: 1.5rem;
$spacing-8: 2rem;
$spacing-10: 2.5rem;
$spacing-12: 3rem;
$spacing-16: 4rem;
$typography-heading-1-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
$typography-heading-1-font-weight: 700;
$typography-heading-1-font-size: 3rem;
$typography-heading-1-line-height: 1;
$typography-heading-1-letter-spacing: -0.025em;
$typography-heading-2-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
$typography-heading-2-font-weight: 600;
$typography-heading-2-font-size: 1.875rem;
$typography-heading-2-line-height: 1.2;
$typography-heading-2-letter-spacing: -0.025em;
$typography-heading-3-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
$typography-heading-3-font-weight: 600;
$typography-heading-3-font-size: 1.5rem;
$typography-heading-3-line-height: 1.3;
$typography-heading-3-letter-spacing: -0.025em;
$typography-heading-4-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
$typography-heading-4-font-weight: 600;
$typography-heading-4-font-size: 1.25rem;
$typography-heading-4-line-height: 1.4;
$typography-heading-4-letter-spacing: 0;
$typography-paragraph-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
$typography-paragraph-regular-font-weight: 400;
$typography-paragraph-regular-font-size: 1rem;
$typography-paragraph-regular-line-height: 1.5;
$typography-paragraph-regular-letter-spacing: 0;
$typography-paragraph-bold-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
$typography-paragraph-bold-font-weight: 500;
$typography-paragraph-bold-font-size: 1rem;
$typography-paragraph-bold-line-height: 1.5;
$typography-paragraph-bold-letter-spacing: 0;
$typography-paragraph-small-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
$typography-paragraph-small-regular-font-weight: 400;
$typography-paragraph-small-regular-font-size: 0.875rem;
$typography-paragraph-small-regular-line-height: 1.5;
$typography-paragraph-small-regular-letter-spacing: 0;

View File

@@ -0,0 +1,102 @@
/**
* Do not edit directly, this file was auto-generated.
*/
:root {
--color-background: #ffffff;
--color-foreground: #09090b;
--color-card: #ffffff;
--color-card-foreground: #09090b;
--color-popover: #ffffff;
--color-popover-foreground: #09090b;
--color-primary: #18181b; /** zinc-900 - brand primary */
--color-primary-foreground: #fafafa; /** zinc-50 */
--color-secondary: #f4f4f5;
--color-secondary-foreground: #18181b;
--color-muted: #f4f4f5;
--color-muted-foreground: #71717a;
--color-accent: #f4f4f5;
--color-accent-foreground: #18181b;
--color-destructive: #ef4444;
--color-destructive-foreground: #fafafa;
--color-border: #e4e4e7;
--color-input: #e4e4e7;
--color-ring: #18181b; /** matches primary */
--color-dark-background: #09090b;
--color-dark-foreground: #fafafa;
--color-dark-card: #09090b;
--color-dark-card-foreground: #fafafa;
--color-dark-popover: #09090b;
--color-dark-popover-foreground: #fafafa;
--color-dark-primary: #fafafa;
--color-dark-primary-foreground: #18181b;
--color-dark-secondary: #27272a;
--color-dark-secondary-foreground: #fafafa;
--color-dark-muted: #27272a;
--color-dark-muted-foreground: #a1a1aa;
--color-dark-accent: #27272a;
--color-dark-accent-foreground: #fafafa;
--color-dark-destructive: #7f1d1d;
--color-dark-destructive-foreground: #fafafa;
--color-dark-border: #27272a;
--color-dark-input: #27272a;
--color-dark-ring: #d4d4d8;
--radius-sm: 0.125rem;
--radius-md: 0.375rem;
--radius-lg: 0.5rem; /** default border radius for cards */
--radius-xl: 0.75rem;
--radius-full: 9999px;
--effect-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
--effect-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
--effect-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
--effect-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
--effect-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
--effect-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
--effect-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.5);
--spacing-0: 0;
--spacing-1: 0.25rem;
--spacing-2: 0.5rem;
--spacing-3: 0.75rem;
--spacing-4: 1rem;
--spacing-5: 1.25rem;
--spacing-6: 1.5rem;
--spacing-8: 2rem;
--spacing-10: 2.5rem;
--spacing-12: 3rem;
--spacing-16: 4rem;
--typography-heading-1-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
--typography-heading-1-font-weight: 700;
--typography-heading-1-font-size: 3rem;
--typography-heading-1-line-height: 1;
--typography-heading-1-letter-spacing: -0.025em;
--typography-heading-2-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
--typography-heading-2-font-weight: 600;
--typography-heading-2-font-size: 1.875rem;
--typography-heading-2-line-height: 1.2;
--typography-heading-2-letter-spacing: -0.025em;
--typography-heading-3-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
--typography-heading-3-font-weight: 600;
--typography-heading-3-font-size: 1.5rem;
--typography-heading-3-line-height: 1.3;
--typography-heading-3-letter-spacing: -0.025em;
--typography-heading-4-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
--typography-heading-4-font-weight: 600;
--typography-heading-4-font-size: 1.25rem;
--typography-heading-4-line-height: 1.4;
--typography-heading-4-letter-spacing: 0;
--typography-paragraph-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
--typography-paragraph-regular-font-weight: 400;
--typography-paragraph-regular-font-size: 1rem;
--typography-paragraph-regular-line-height: 1.5;
--typography-paragraph-regular-letter-spacing: 0;
--typography-paragraph-bold-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
--typography-paragraph-bold-font-weight: 500;
--typography-paragraph-bold-font-size: 1rem;
--typography-paragraph-bold-line-height: 1.5;
--typography-paragraph-bold-letter-spacing: 0;
--typography-paragraph-small-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
--typography-paragraph-small-regular-font-weight: 400;
--typography-paragraph-small-regular-font-size: 0.875rem;
--typography-paragraph-small-regular-line-height: 1.5;
--typography-paragraph-small-regular-letter-spacing: 0;
}

View File

@@ -0,0 +1,98 @@
{
"ColorBackground": "#ffffff",
"ColorForeground": "#09090b",
"ColorCard": "#ffffff",
"ColorCardForeground": "#09090b",
"ColorPopover": "#ffffff",
"ColorPopoverForeground": "#09090b",
"ColorPrimary": "#18181b",
"ColorPrimaryForeground": "#fafafa",
"ColorSecondary": "#f4f4f5",
"ColorSecondaryForeground": "#18181b",
"ColorMuted": "#f4f4f5",
"ColorMutedForeground": "#71717a",
"ColorAccent": "#f4f4f5",
"ColorAccentForeground": "#18181b",
"ColorDestructive": "#ef4444",
"ColorDestructiveForeground": "#fafafa",
"ColorBorder": "#e4e4e7",
"ColorInput": "#e4e4e7",
"ColorRing": "#18181b",
"ColorDarkBackground": "#09090b",
"ColorDarkForeground": "#fafafa",
"ColorDarkCard": "#09090b",
"ColorDarkCardForeground": "#fafafa",
"ColorDarkPopover": "#09090b",
"ColorDarkPopoverForeground": "#fafafa",
"ColorDarkPrimary": "#fafafa",
"ColorDarkPrimaryForeground": "#18181b",
"ColorDarkSecondary": "#27272a",
"ColorDarkSecondaryForeground": "#fafafa",
"ColorDarkMuted": "#27272a",
"ColorDarkMutedForeground": "#a1a1aa",
"ColorDarkAccent": "#27272a",
"ColorDarkAccentForeground": "#fafafa",
"ColorDarkDestructive": "#7f1d1d",
"ColorDarkDestructiveForeground": "#fafafa",
"ColorDarkBorder": "#27272a",
"ColorDarkInput": "#27272a",
"ColorDarkRing": "#d4d4d8",
"RadiusSm": "0.125rem",
"RadiusMd": "0.375rem",
"RadiusLg": "0.5rem",
"RadiusXl": "0.75rem",
"RadiusFull": "9999px",
"EffectShadowXs": "0 1px 2px 0 rgba(0, 0, 0, 0.05)",
"EffectShadowSm": "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)",
"EffectShadowMd": "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)",
"EffectShadowLg": "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",
"EffectShadowXl": "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)",
"EffectShadow2xl": "0 25px 50px -12px rgba(0, 0, 0, 0.25)",
"EffectFocusRing": "0 0 0 3px rgba(59, 130, 246, 0.5)",
"Spacing0": "0",
"Spacing1": "0.25rem",
"Spacing2": "0.5rem",
"Spacing3": "0.75rem",
"Spacing4": "1rem",
"Spacing5": "1.25rem",
"Spacing6": "1.5rem",
"Spacing8": "2rem",
"Spacing10": "2.5rem",
"Spacing12": "3rem",
"Spacing16": "4rem",
"TypographyHeading1FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
"TypographyHeading1FontWeight": "700",
"TypographyHeading1FontSize": "3rem",
"TypographyHeading1LineHeight": "1",
"TypographyHeading1LetterSpacing": "-0.025em",
"TypographyHeading2FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
"TypographyHeading2FontWeight": "600",
"TypographyHeading2FontSize": "1.875rem",
"TypographyHeading2LineHeight": "1.2",
"TypographyHeading2LetterSpacing": "-0.025em",
"TypographyHeading3FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
"TypographyHeading3FontWeight": "600",
"TypographyHeading3FontSize": "1.5rem",
"TypographyHeading3LineHeight": "1.3",
"TypographyHeading3LetterSpacing": "-0.025em",
"TypographyHeading4FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
"TypographyHeading4FontWeight": "600",
"TypographyHeading4FontSize": "1.25rem",
"TypographyHeading4LineHeight": "1.4",
"TypographyHeading4LetterSpacing": "0",
"TypographyParagraphRegularFontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
"TypographyParagraphRegularFontWeight": "400",
"TypographyParagraphRegularFontSize": "1rem",
"TypographyParagraphRegularLineHeight": "1.5",
"TypographyParagraphRegularLetterSpacing": "0",
"TypographyParagraphBoldFontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
"TypographyParagraphBoldFontWeight": "500",
"TypographyParagraphBoldFontSize": "1rem",
"TypographyParagraphBoldLineHeight": "1.5",
"TypographyParagraphBoldLetterSpacing": "0",
"TypographyParagraphSmallRegularFontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
"TypographyParagraphSmallRegularFontWeight": "400",
"TypographyParagraphSmallRegularFontSize": "0.875rem",
"TypographyParagraphSmallRegularLineHeight": "1.5",
"TypographyParagraphSmallRegularLetterSpacing": "0"
}

View File

@@ -0,0 +1,9 @@
{
"_meta": {
"version": "1.0.0",
"generated": null,
"source": "awaiting Figma sync",
"status": "empty"
},
"tokens": {}
}

View File

@@ -0,0 +1,11 @@
{
"resolved_at": "2025-12-10T21:38:48.326466",
"skin": "shadcn",
"theme": "default",
"token_count": 68,
"layers": [
"core/primitives",
"skins/shadcn",
"themes/default"
]
}

View File

@@ -0,0 +1,320 @@
{
"color": {
"background": {
"value": "#ffffff"
},
"foreground": {
"value": "#09090b"
},
"card": {
"value": "#ffffff"
},
"card-foreground": {
"value": "#09090b"
},
"popover": {
"value": "#ffffff"
},
"popover-foreground": {
"value": "#09090b"
},
"primary": {
"value": "#18181b",
"comment": "zinc-900 - brand primary"
},
"primary-foreground": {
"value": "#fafafa",
"comment": "zinc-50"
},
"secondary": {
"value": "#f4f4f5"
},
"secondary-foreground": {
"value": "#18181b"
},
"muted": {
"value": "#f4f4f5"
},
"muted-foreground": {
"value": "#71717a"
},
"accent": {
"value": "#f4f4f5"
},
"accent-foreground": {
"value": "#18181b"
},
"destructive": {
"value": "#ef4444"
},
"destructive-foreground": {
"value": "#fafafa"
},
"border": {
"value": "#e4e4e7"
},
"input": {
"value": "#e4e4e7"
},
"ring": {
"value": "#18181b",
"comment": "matches primary"
}
},
"color-dark": {
"background": {
"value": "#09090b"
},
"foreground": {
"value": "#fafafa"
},
"card": {
"value": "#09090b"
},
"card-foreground": {
"value": "#fafafa"
},
"popover": {
"value": "#09090b"
},
"popover-foreground": {
"value": "#fafafa"
},
"primary": {
"value": "#fafafa"
},
"primary-foreground": {
"value": "#18181b"
},
"secondary": {
"value": "#27272a"
},
"secondary-foreground": {
"value": "#fafafa"
},
"muted": {
"value": "#27272a"
},
"muted-foreground": {
"value": "#a1a1aa"
},
"accent": {
"value": "#27272a"
},
"accent-foreground": {
"value": "#fafafa"
},
"destructive": {
"value": "#7f1d1d"
},
"destructive-foreground": {
"value": "#fafafa"
},
"border": {
"value": "#27272a"
},
"input": {
"value": "#27272a"
},
"ring": {
"value": "#d4d4d8"
}
},
"radius": {
"sm": {
"value": "0.125rem"
},
"md": {
"value": "0.375rem"
},
"lg": {
"value": "0.5rem",
"comment": "default border radius for cards"
},
"xl": {
"value": "0.75rem"
},
"full": {
"value": "9999px"
}
},
"effect": {
"shadow-xs": {
"value": "0 1px 2px 0 rgba(0, 0, 0, 0.05)"
},
"shadow-sm": {
"value": "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)"
},
"shadow-md": {
"value": "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)"
},
"shadow-lg": {
"value": "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)"
},
"shadow-xl": {
"value": "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)"
},
"shadow-2xl": {
"value": "0 25px 50px -12px rgba(0, 0, 0, 0.25)"
},
"focus-ring": {
"value": "0 0 0 3px rgba(59, 130, 246, 0.5)"
}
},
"spacing": {
"0": {
"value": "0"
},
"1": {
"value": "0.25rem"
},
"2": {
"value": "0.5rem"
},
"3": {
"value": "0.75rem"
},
"4": {
"value": "1rem"
},
"5": {
"value": "1.25rem"
},
"6": {
"value": "1.5rem"
},
"8": {
"value": "2rem"
},
"10": {
"value": "2.5rem"
},
"12": {
"value": "3rem"
},
"16": {
"value": "4rem"
}
},
"typography": {
"heading-1": {
"font-family": {
"value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif"
},
"font-weight": {
"value": "700"
},
"font-size": {
"value": "3rem"
},
"line-height": {
"value": "1"
},
"letter-spacing": {
"value": "-0.025em"
}
},
"heading-2": {
"font-family": {
"value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif"
},
"font-weight": {
"value": "600"
},
"font-size": {
"value": "1.875rem"
},
"line-height": {
"value": "1.2"
},
"letter-spacing": {
"value": "-0.025em"
}
},
"heading-3": {
"font-family": {
"value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif"
},
"font-weight": {
"value": "600"
},
"font-size": {
"value": "1.5rem"
},
"line-height": {
"value": "1.3"
},
"letter-spacing": {
"value": "-0.025em"
}
},
"heading-4": {
"font-family": {
"value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif"
},
"font-weight": {
"value": "600"
},
"font-size": {
"value": "1.25rem"
},
"line-height": {
"value": "1.4"
},
"letter-spacing": {
"value": "0"
}
},
"paragraph-regular": {
"font-family": {
"value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif"
},
"font-weight": {
"value": "400"
},
"font-size": {
"value": "1rem"
},
"line-height": {
"value": "1.5"
},
"letter-spacing": {
"value": "0"
}
},
"paragraph-bold": {
"font-family": {
"value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif"
},
"font-weight": {
"value": "500"
},
"font-size": {
"value": "1rem"
},
"line-height": {
"value": "1.5"
},
"letter-spacing": {
"value": "0"
}
},
"paragraph-small-regular": {
"font-family": {
"value": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif"
},
"font-weight": {
"value": "400"
},
"font-size": {
"value": "0.875rem"
},
"line-height": {
"value": "1.5"
},
"letter-spacing": {
"value": "0"
}
}
}
}

View File

@@ -0,0 +1,87 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "DSS Skin Contract",
"description": "Defines required tokens that all skins must provide. Themes should only override these stable tokens.",
"version": "1.0.0",
"required_tokens": {
"color": {
"description": "Semantic color tokens",
"required": [
"primary",
"primary-foreground",
"secondary",
"secondary-foreground",
"background",
"foreground",
"muted",
"muted-foreground",
"accent",
"accent-foreground",
"destructive",
"destructive-foreground",
"border",
"input",
"ring",
"card",
"card-foreground",
"popover",
"popover-foreground"
]
},
"effect": {
"description": "Shadow and focus effect tokens",
"required": [
"shadow-xs",
"shadow-sm",
"shadow-md",
"shadow-lg",
"shadow-xl",
"shadow-2xl",
"focus-ring"
]
},
"radius": {
"description": "Border radius tokens",
"required": [
"sm",
"md",
"lg",
"xl",
"full"
]
},
"typography": {
"description": "Typography style tokens",
"required": [
"heading-1",
"heading-2",
"heading-3",
"heading-4",
"paragraph-regular",
"paragraph-bold",
"paragraph-small-regular"
]
},
"spacing": {
"description": "Spacing scale tokens",
"required": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"8",
"10",
"12",
"16"
]
}
},
"optional_categories": [
"animation",
"breakpoint",
"z-index"
]
}

View File

@@ -0,0 +1,306 @@
{
"_meta": {
"name": "figma-source",
"description": "Tokens extracted from Figma: Obra shadcn/ui (uikit)",
"version": "1.0.0",
"layer": "skin",
"source": "figma:evCZlaeZrP7X20NIViSJbl",
"generated": "2025-12-10T20:49:27.631185"
},
"typography": {
"heading-1": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 600
},
"font-size": {
"value": "48px"
},
"line-height": {
"value": "48px"
},
"letter-spacing": {
"value": "-1.5px"
},
"_contract": true
},
"heading-2": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 600
},
"font-size": {
"value": "30px"
},
"line-height": {
"value": "30px"
},
"letter-spacing": {
"value": "-1.0px"
},
"_contract": true
},
"paragraph-small-regular": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 400
},
"font-size": {
"value": "14px"
},
"line-height": {
"value": "21px"
},
"letter-spacing": {
"value": "0.07px"
},
"_contract": true
},
"paragraph-small-bold": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 500
},
"font-size": {
"value": "14px"
},
"line-height": {
"value": "21px"
},
"letter-spacing": {
"value": "0.07px"
},
"_contract": false
},
"heading-3": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 600
},
"font-size": {
"value": "24px"
},
"line-height": {
"value": "29px"
},
"letter-spacing": {
"value": "-1.0px"
},
"_contract": true
},
"paragraph-bold": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 500
},
"font-size": {
"value": "16px"
},
"line-height": {
"value": "24px"
},
"letter-spacing": {
"value": "0.0px"
},
"_contract": true
},
"paragraph-regular": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 400
},
"font-size": {
"value": "16px"
},
"line-height": {
"value": "24px"
},
"letter-spacing": {
"value": "0.0px"
},
"_contract": true
},
"paragraph-mini-regular": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 400
},
"font-size": {
"value": "12px"
},
"line-height": {
"value": "16px"
},
"letter-spacing": {
"value": "0.18px"
},
"_contract": false
},
"heading-4": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 600
},
"font-size": {
"value": "20px"
},
"line-height": {
"value": "24px"
},
"letter-spacing": {
"value": "0.0px"
},
"_contract": true
},
"monospaced": {
"font-family": {
"value": "Menlo"
},
"font-weight": {
"value": 400
},
"font-size": {
"value": "16px"
},
"line-height": {
"value": "24px"
},
"letter-spacing": {
"value": "0.0px"
},
"_contract": false
},
"paragraph-medium": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 500
},
"font-size": {
"value": "16px"
},
"line-height": {
"value": "24px"
},
"letter-spacing": {
"value": "0.0px"
},
"_contract": false
},
"paragraph-small-medium": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 500
},
"font-size": {
"value": "14px"
},
"line-height": {
"value": "21px"
},
"letter-spacing": {
"value": "0.07px"
},
"_contract": false
},
"paragraph-mini-bold": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 500
},
"font-size": {
"value": "12px"
},
"line-height": {
"value": "16px"
},
"letter-spacing": {
"value": "0.18px"
},
"_contract": false
},
"paragraph-mini-medium": {
"font-family": {
"value": "Inter"
},
"font-weight": {
"value": 500
},
"font-size": {
"value": "12px"
},
"line-height": {
"value": "16px"
},
"letter-spacing": {
"value": "0.18px"
},
"_contract": false
}
},
"effect": {
"shadow-sm": {
"value": "0.0px 1.0px 2.0px -1.0px rgba(0, 0, 0, 0.1), 0.0px 1.0px 3.0px 0px rgba(0, 0, 0, 0.1)",
"_contract": true
},
"shadow-lg": {
"value": "0.0px 4.0px 6.0px -4.0px rgba(0, 0, 0, 0.1), 0.0px 10.0px 15.0px -3.0px rgba(0, 0, 0, 0.1)",
"_contract": true
},
"shadow-2xs": {
"value": "0.0px 1.0px 0.0px 0px rgba(0, 0, 0, 0.05)",
"_contract": false
},
"shadow-xs": {
"value": "0.0px 1.0px 2.0px 0px rgba(0, 0, 0, 0.05)",
"_contract": true
},
"shadow-md": {
"value": "0.0px 2.0px 4.0px -2.0px rgba(0, 0, 0, 0.1), 0.0px 4.0px 6.0px -1.0px rgba(0, 0, 0, 0.1)",
"_contract": true
},
"shadow-xl": {
"value": "0.0px 8.0px 10.0px -6.0px rgba(0, 0, 0, 0.1), 0.0px 20.0px 25.0px -5.0px rgba(0, 0, 0, 0.1)",
"_contract": true
},
"shadow-2xl": {
"value": "0.0px 25.0px 50.0px 12.0px rgba(0, 0, 0, 0.25)",
"_contract": true
},
"focus-ring": {
"value": "0.0px 0.0px 0.0px 3.0px rgb(203, 213, 225)",
"_contract": true
},
"focus-ring-error": {
"value": "0.0px 0.0px 0.0px 3.0px rgb(252, 165, 165)",
"_contract": false
},
"focus-ring-sidebar": {
"value": "0.0px 0.0px 0.0px 3.0px rgb(203, 213, 225)",
"_contract": false
}
}
}

View File

@@ -0,0 +1,132 @@
{
"_meta": {
"name": "shadcn",
"description": "shadcn/ui skin - maps primitives to semantic tokens",
"version": "1.0.0",
"layer": "skin",
"extends": "core/primitives",
"source": "https://ui.shadcn.com"
},
"color": {
"background": { "value": "{color.white}" },
"foreground": { "value": "{color.zinc.950}" },
"card": { "value": "{color.white}" },
"card-foreground": { "value": "{color.zinc.950}" },
"popover": { "value": "{color.white}" },
"popover-foreground": { "value": "{color.zinc.950}" },
"primary": { "value": "{color.zinc.900}" },
"primary-foreground": { "value": "{color.zinc.50}" },
"secondary": { "value": "{color.zinc.100}" },
"secondary-foreground": { "value": "{color.zinc.900}" },
"muted": { "value": "{color.zinc.100}" },
"muted-foreground": { "value": "{color.zinc.500}" },
"accent": { "value": "{color.zinc.100}" },
"accent-foreground": { "value": "{color.zinc.900}" },
"destructive": { "value": "{color.red.500}" },
"destructive-foreground": { "value": "{color.zinc.50}" },
"border": { "value": "{color.zinc.200}" },
"input": { "value": "{color.zinc.200}" },
"ring": { "value": "{color.zinc.950}" }
},
"color-dark": {
"background": { "value": "{color.zinc.950}" },
"foreground": { "value": "{color.zinc.50}" },
"card": { "value": "{color.zinc.950}" },
"card-foreground": { "value": "{color.zinc.50}" },
"popover": { "value": "{color.zinc.950}" },
"popover-foreground": { "value": "{color.zinc.50}" },
"primary": { "value": "{color.zinc.50}" },
"primary-foreground": { "value": "{color.zinc.900}" },
"secondary": { "value": "{color.zinc.800}" },
"secondary-foreground": { "value": "{color.zinc.50}" },
"muted": { "value": "{color.zinc.800}" },
"muted-foreground": { "value": "{color.zinc.400}" },
"accent": { "value": "{color.zinc.800}" },
"accent-foreground": { "value": "{color.zinc.50}" },
"destructive": { "value": "{color.red.900}" },
"destructive-foreground": { "value": "{color.zinc.50}" },
"border": { "value": "{color.zinc.800}" },
"input": { "value": "{color.zinc.800}" },
"ring": { "value": "{color.zinc.300}" }
},
"radius": {
"sm": { "value": "{radius.sm}" },
"md": { "value": "{radius.md}" },
"lg": { "value": "{radius.lg}" },
"xl": { "value": "{radius.xl}" },
"full": { "value": "{radius.full}" }
},
"effect": {
"shadow-xs": { "value": "0 1px 2px 0 rgba(0, 0, 0, 0.05)" },
"shadow-sm": { "value": "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)" },
"shadow-md": { "value": "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)" },
"shadow-lg": { "value": "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)" },
"shadow-xl": { "value": "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)" },
"shadow-2xl": { "value": "0 25px 50px -12px rgba(0, 0, 0, 0.25)" },
"focus-ring": { "value": "0 0 0 3px rgba(59, 130, 246, 0.5)" }
},
"spacing": {
"0": { "value": "{spacing.0}" },
"1": { "value": "{spacing.1}" },
"2": { "value": "{spacing.2}" },
"3": { "value": "{spacing.3}" },
"4": { "value": "{spacing.4}" },
"5": { "value": "{spacing.5}" },
"6": { "value": "{spacing.6}" },
"8": { "value": "{spacing.8}" },
"10": { "value": "{spacing.10}" },
"12": { "value": "{spacing.12}" },
"16": { "value": "{spacing.16}" }
},
"typography": {
"heading-1": {
"font-family": { "value": "{font.family.sans}" },
"font-weight": { "value": "{font.weight.bold}" },
"font-size": { "value": "{font.size.5xl}" },
"line-height": { "value": "1" },
"letter-spacing": { "value": "-0.025em" }
},
"heading-2": {
"font-family": { "value": "{font.family.sans}" },
"font-weight": { "value": "{font.weight.semibold}" },
"font-size": { "value": "{font.size.3xl}" },
"line-height": { "value": "1.2" },
"letter-spacing": { "value": "-0.025em" }
},
"heading-3": {
"font-family": { "value": "{font.family.sans}" },
"font-weight": { "value": "{font.weight.semibold}" },
"font-size": { "value": "{font.size.2xl}" },
"line-height": { "value": "1.3" },
"letter-spacing": { "value": "-0.025em" }
},
"heading-4": {
"font-family": { "value": "{font.family.sans}" },
"font-weight": { "value": "{font.weight.semibold}" },
"font-size": { "value": "{font.size.xl}" },
"line-height": { "value": "1.4" },
"letter-spacing": { "value": "0" }
},
"paragraph-regular": {
"font-family": { "value": "{font.family.sans}" },
"font-weight": { "value": "{font.weight.normal}" },
"font-size": { "value": "{font.size.base}" },
"line-height": { "value": "1.5" },
"letter-spacing": { "value": "0" }
},
"paragraph-bold": {
"font-family": { "value": "{font.family.sans}" },
"font-weight": { "value": "{font.weight.medium}" },
"font-size": { "value": "{font.size.base}" },
"line-height": { "value": "1.5" },
"letter-spacing": { "value": "0" }
},
"paragraph-small-regular": {
"font-family": { "value": "{font.family.sans}" },
"font-weight": { "value": "{font.weight.normal}" },
"font-size": { "value": "{font.size.sm}" },
"line-height": { "value": "1.5" },
"letter-spacing": { "value": "0" }
}
}
}

18
.dss/themes/default.json Normal file
View File

@@ -0,0 +1,18 @@
{
"_meta": {
"name": "default",
"description": "Default theme - brand overrides on top of shadcn skin",
"version": "1.0.0",
"layer": "theme",
"extends": "skins/shadcn",
"contract_version": "1.0.0"
},
"color": {
"primary": { "value": "#18181b", "comment": "zinc-900 - brand primary" },
"primary-foreground": { "value": "#fafafa", "comment": "zinc-50" },
"ring": { "value": "#18181b", "comment": "matches primary" }
},
"radius": {
"lg": { "value": "0.5rem", "comment": "default border radius for cards" }
}
}