SuperAPI AI 工具集

tailwind-design-system

前端与建站

查看项目

更新于 10-15 08:33

技能介绍

用途

Tailwind Design System 技能用于构建生产级设计系统,基于 Tailwind CSS v4 提供 CSS-first 配置、设计令牌、组件变体、响应式模式和无障碍支持。它适合在需要创建组件库、统一 UI 规范或从 v3 迁移到 v4 的项目中使用。

主要能力

  • 使用 Tailwind CSS v4 创建组件库
  • 通过 CSS-first 配置实现设计令牌与主题
  • 构建响应式且可访问的组件
  • 标准化代码库中的 UI 模式
  • 从 Tailwind v3 迁移到 v4
  • 使用原生 CSS 特性设置暗色模式

v4 关键变化

技能列出了 v3 到 v4 的模式对照:

v3 模式 v4 模式
tailwind.config.ts 在 CSS 中使用 @theme
@tailwind base/components/utilities @import "tailwindcss"
darkMode: "class" @custom-variant dark (&:where(.dark, .dark *))
theme.extend.colors @theme { --color-*: value }
require("tailwindcss-animate") 在 @theme 中使用 CSS @keyframes + @starting-style 处理入场动画

使用方式

技能提供了一份快速开始示例,展示了 Tailwind v4 的 CSS-first 配置写法:

/* app.css - Tailwind v4 CSS-first configuration */
@import "tailwindcss";

/* Define your theme with @theme */
@theme {
  /* Semantic color tokens using OKLCH for better color perception */
  --color-background: oklch(100% 0 0);
  --color-foreground: oklch(14.5% 0.025 264);

  --color-primary: oklch(14.5% 0.025 264);
  --color-primary-foreground: oklch(98% 0.01 264);

  --color-secondary: oklch(96% 0.01 264);
  --color-secondary-foreground: oklch(14.5% 0.025 264);

  --color-muted: oklch(96% 0.01 264);
  --color-muted-foreground: oklch(46% 0.02 264);

  --color-accent: oklch(96% 0.01 264);
  --color-accent-foreground: oklch(14.5% 0.025 264);

  --color-destructive: oklch(53% 0.22 27);
  --color-destructive-foreground: oklch(98% 0.01 264);

  --color-border: oklch(91% 0.01 264);
  --color-ring: oklch(14.5% 0.025 264);

  --color-card: oklch(100% 0 0);
  --color-card-foreground: oklch(14.5% 0.025 264);

  /* Ring offset for focus states */
  --color-ring-offset: oklch(100% 0 0);

  /* Radius tokens */
  --radius-sm: 0.25rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;

  /* Animation tokens - keyframes inside @theme are output when referenced by --animate-* variables */
  --animate-fade-in: fade-in 0.2s ease-out;
  --animate-fade-out: fade-out 0.2s ease-in;
  --animate-slide-in: slide-in 0.3s ease-out;
  --animate-slide-out: slide-out 0.3s ease-in;

  @keyframes fade-in {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }

  @keyframes fade-out {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }

  @keyframes slide-in {
    from {
      transform: translateY(-0.5rem);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }

  @keyframes slide-out {
    from {
      transform: translateY(0);
      opacity: 1;
    }
    to {
      transform: translateY(-0.5rem);
      opacity: 0;
    }
  }
}

/* Dark mode variant - use @custom-variant for class-based dark mode */
@custom-variant dark (&:where(.dark, .dark *));

/* Dark mode theme overrides */
.dark {
  --color-background: oklch(14.5% 0.025 264);
  --color-foreground: oklch(98% 0.01 264);

  --color-primary: oklch(98% 0.01 264);
  --color-primary-foreground: oklch(14.5% 0.025 264);

  --color-secondary: oklch(22% 0.02 264);
  --color-secondary-foreground: oklch(98% 0.01 264);

  --color-muted: oklch(22% 0.02 264);
  --color-muted-foreground: oklch(65% 0.02 264);

  --color-accent: oklch(22% 0.02 264);
  --color-accent-foreground: oklch(98% 0.01 264);

  --color-destructive: oklch(42% 0.15 27);
  --color-destructive-foreground: oklch(98% 0.01 264);

  --color-border: oklch(22% 0.02 264);
  --color-ring: oklch(83% 0.02 264);

  --color-card: oklch(14.5% 0.025 264);
  --color-card-foreground: oklch(98% 0.01 264);

  --color-ring-offset: oklch(14.5% 0.025 264);
}

/* Base styles */
@layer base {
  * {
    @apply border-border;
  }

  body {
    @apply bg-background text-foreground antialiased;
  }
}

核心概念

1. 设计令牌层级

Brand Tokens (abstract)
    └── Semantic Tokens (purpose)
        └── Component Tokens (specific)

Example:
    oklch(45% 0.2 260) → --color-primary → bg-primary

2. 组件架构

Base styles → Variants → Sizes → States → Overrides

适用场景

  • 使用 Tailwind v4 创建组件库
  • 通过 CSS-first 配置实现设计令牌与主题
  • 构建响应式且可访问的组件
  • 统一代码库中的 UI 模式
  • 从 Tailwind v3 迁移到 v4
  • 使用原生 CSS 特性设置暗色模式

限制

该技能面向 Tailwind CSS v4(2024 年及以后)。对于 v3 项目,需参考升级指南。更详细的模式文档位于 references/details.md,当上述导航层级不足时可阅读该文件。关于安装命令、收费与价格、平台支持等具体信息,资料中暂未提供。