Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问clear审计通过

tailwindcss-performanceTailwind CSS 性能

Agent Skill

用于辅助前端页面、组件、样式和交互逻辑的开发与维护。它适合让 Agent 生成或审查 React、Next.js、Vue、Tailwind、CSS 等相关代码,整理组件结构,或定位布局和性能问题。使用时需要结合项目现有设计系统、路由和构建方式,避免只生成孤立片段;涉及页面改动时,应配合本地预览和构建检查确认视觉效果。

总安装

3,145

周安装

126

GitHub Stars

33

下载量

1,018
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:tailwindcss-performance(Tailwind CSS 性能)
来源仓库:https://github.com/josiahsiegel/claude-plugin-marketplace
仓库路径:skills/tailwindcss-performance
安装命令:
npx skills add https://github.com/josiahsiegel/claude-plugin-marketplace --skill tailwindcss-performance
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/josiahsiegel/claude-plugin-marketplace --skill tailwindcss-performance

简介

辅助分析 Tailwind CSS 在生产环境中的性能表现。

  • 可识别未使用的样式、冗余类名及打包体积问题。
  • 提供优化建议,如启用 JIT 模式、配置 purge 规则等。
  • 需结合具体构建流程验证实际效果,不可直接断言性能提升。
  • tailwindcss-performance 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Tailwind CSS Performance Optimization

v4 Performance Improvements

Tailwind CSS v4 features a completely rewritten engine in Rust:

Metricv3v4
Full buildsBaselineUp to 5x faster
Incremental buildsMillisecondsMicroseconds (100x+)
EngineJavaScriptRust

JIT (Just-In-Time) Compilation

How JIT Works

JIT generates styles on-demand as classes are discovered in your files:

  1. Scans source files for class names
  2. Generates only the CSS you use
  3. Produces minimal, optimized output

v4: Always JIT

Unlike v3, JIT is always enabled in v4—no configuration needed:

@import "tailwindcss";
/* JIT is automatic */

Content Detection

Automatic Detection (v4)

v4 automatically detects template files—no content configuration required:

/* v4 - Works automatically */
@import "tailwindcss";

Explicit Content (v4)

If automatic detection fails, specify sources explicitly:

@import "tailwindcss";
@source "./src/**/*.{html,js,jsx,ts,tsx,vue,svelte}";
@source "./components/**/*.{js,jsx,ts,tsx}";

Excluding Paths

@source not "./src/legacy/**";

Tree Shaking

How It Works

Tailwind's build process removes unused CSS:

Source: All possible utilities (~15MB+)
↓
Scan: Find used class names
↓
Output: Only used styles (~10-50KB typical)

Production Build

# Vite - automatically optimized for production
npm run build

# PostCSS - ensure NODE_ENV is set
NODE_ENV=production npx postcss input.css -o output.css

Dynamic Class Names

The Problem

Tailwind can't detect dynamically constructed class names:

// BAD - Classes won't be generated
const color = 'blue'
className={`text-${color}-500`}  // ❌ Not detected

const size = 'lg'
className={`text-${size}`}  // ❌ Not detected

Solutions

1. Use Complete Class Names

// GOOD - Full class names
const colorClasses = {
  blue: 'text-blue-500',
  red: 'text-red-500',
  green: 'text-green-500',
}
className={colorClasses[color]}  // ✓ Detected

2. Use Data Attributes

// GOOD - Style based on data attributes
<div data-color={color} className="data-[color=blue]:text-blue-500 data-[color=red]:text-red-500">

3. Safelist Classes

/* In your CSS for v4 */
@source inline("text-blue-500 text-red-500 text-green-500");

4. CSS Variables

@theme {
  --color-dynamic: oklch(0.6 0.2 250);
}
<div class="text-[var(--color-dynamic)]">Dynamic color</div>

Optimizing Transitions

Use Specific Transitions

<!-- SLOW - Transitions all properties -->
<button class="transition-all duration-200">

<!-- FAST - Only transitions specific properties -->
<button class="transition-colors duration-200">
<button class="transition-transform duration-200">
<button class="transition-opacity duration-200">

GPU-Accelerated Properties

Prefer transform and opacity for smooth animations:

<!-- GOOD - GPU accelerated -->
<div class="transform hover:scale-105 transition-transform">

<!-- GOOD - GPU accelerated -->
<div class="opacity-100 hover:opacity-80 transition-opacity">

<!-- SLOW - May cause repaints -->
<div class="left-0 hover:left-4 transition-all">

CSS Variable Usage

Prefer Native Variables

In v4, use CSS variables directly instead of theme():

/* v3 - Uses theme() function */
.element {
  color: theme(colors.blue.500);
}

/* v4 - Use CSS variables (faster) */
.element {
  color: var(--color-blue-500);
}

Static Theme Values

For performance-critical paths:

@import "tailwindcss/theme.css" theme(static);

This inlines theme values instead of using CSS variables.

Build Optimization

Vite Configuration

// vite.config.js
import tailwindcss from '@tailwindcss/vite'
import { defineConfig } from 'vite'

export default defineConfig({
  plugins: [tailwindcss()],
  build: {
    // Minify CSS
    cssMinify: 'lightningcss',
    // Optimize chunks
    rollupOptions: {
      output: {
        manualChunks: {
          // Split vendor CSS if needed
        }
      }
    }
  }
})

PostCSS with cssnano

// postcss.config.mjs
export default {
  plugins: {
    '@tailwindcss/postcss': {},
    cssnano: process.env.NODE_ENV === 'production' ? {} : false
  }
}

Reducing Bundle Size

1. Avoid Unused Plugins

/* Only load what you need */
@plugin "@tailwindcss/typography";
/* Don't load unused plugins */

2. Limit Color Palette

@theme {
  /* Disable default colors */
  --color-*: initial;

  /* Define only needed colors */
  --color-primary: oklch(0.6 0.2 250);
  --color-secondary: oklch(0.7 0.15 180);
  --color-gray-100: oklch(0.95 0 0);
  --color-gray-900: oklch(0.15 0 0);
}

3. Limit Breakpoints

@theme {
  /* Remove unused breakpoints */
  --breakpoint-2xl: initial;

  /* Keep only what you use */
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
}

Caching Strategies

Development

  • v4's incremental builds are already extremely fast
  • No additional caching needed in most cases

CI/CD

# GitHub Actions example
- name: Cache node_modules
  uses: actions/cache@v4
  with:
    path: node_modules
    key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}

- name: Build
  run: npm run build

Measuring Performance

Build Time Analysis

# Time your build
time npm run build

# Verbose output
DEBUG=tailwindcss:* npm run build

Bundle Analysis

# Install analyzer
npm install -D vite-bundle-analyzer

# Analyze bundle
npm run build -- --analyze

CSS Size Check

# Check output CSS size
ls -lh dist/assets/*.css

# Gzipped size
gzip -c dist/assets/main.css | wc -c

Performance Checklist

Development

  • JIT is working (styles update instantly)
  • No console warnings about large files
  • Hot reload is fast

Production

  • NODE_ENV=production is set
  • CSS is minified
  • Unused CSS is removed
  • No dynamic class name issues
  • CSS size is reasonable (<50KB typical)

Common Issues

IssueSolution
Large CSS outputCheck for dynamic classes, safelist issues
Slow buildsEnsure v4, check file globs
Missing stylesCheck content detection, class names
Slow animationsUse GPU-accelerated properties

Lazy Loading CSS

For very large apps, consider code-splitting CSS:

// Dynamically import CSS for routes
const AdminPage = lazy(() =>
  import('./admin.css').then(() => import('./AdminPage'))
)

Best Practices Summary

  1. Let JIT do its work - Don't safelist unnecessarily
  2. Use complete class names - Avoid dynamic concatenation
  3. Specific transitions - Not transition-all
  4. GPU properties - Prefer transform and opacity
  5. Minimal theme - Only define what you use
  6. Production builds - Always use production mode
  7. Measure - Check your actual CSS size

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Antigravity

31.47%
按下载量换算320

Claude Code

23.15%
按下载量换算236

OpenCode

18.72%
按下载量换算191

Gemini CLI

13.13%
按下载量换算134

Cursor

7.86%
按下载量换算80

windsurf

3.61%
按下载量换算37

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills