inspira-ui by secondsky/claude-skills
npx skills add https://github.com/secondsky/claude-skills --skill inspira-uiInspira UI 是一个包含 120 多个可复用、带动画的组件集合,基于 TailwindCSS v4、motion-v、GSAP 和 Three.js 构建,旨在帮助您更快地构建精美的 Vue 和 Nuxt 应用程序。
在构建以下项目时使用 Inspira UI:
主要优势 :
# 所有组件必需
bun add -d clsx tailwind-merge class-variance-authority tw-animate-css
bun add @vueuse/core motion-v
# 可选:用于 3D 组件(Globe, Cosmic Portal 等)
bun add three @types/three
# 可选:用于 WebGL 组件(Fluid Cursor, Neural Background 等)
bun add ogl
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
创建 lib/utils.ts:
import { type ClassValue, clsx } from "clsx";
import { twMerge } from "tailwind-merge";
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs));
}
添加到您的 main.css。完整的 CSS 配置(包含 OkLch 颜色)请参见 references/SETUP.md。
./scripts/verify-setup.sh
浏览 inspira-ui.com/components,将您需要的组件复制到 components/ui/ 目录下。
您需要哪种类型的效果?
* 参见:[references/components-list.md#backgrounds](https://github.com/secondsky/claude-skills/blob/HEAD/plugins/inspira-ui/skills/inspira-ui/references/components-list.md#-backgrounds-24)
* 参见:[references/components-list.md#text-animations](https://github.com/secondsky/claude-skills/blob/HEAD/plugins/inspira-ui/skills/inspira-ui/references/components-list.md#-text-animations-24)
* 依赖:`bun add three @types/three`
* 参见:[references/components-list.md#visualization](https://github.com/secondsky/claude-skills/blob/HEAD/plugins/inspira-ui/skills/inspira-ui/references/components-list.md#-visualization-21)
4. 交互式光标 → Fluid Cursor, Tailed Cursor, Smooth Cursor
* 依赖:`bun add ogl`(用于 WebGL 光标)
* 参见:[references/components-list.md#cursors](https://github.com/secondsky/claude-skills/blob/HEAD/plugins/inspira-ui/skills/inspira-ui/references/components-list.md#%EF%B8%8F-cursors-5)
5. 动画按钮 → Shimmer, Ripple, Rainbow, Gradient
* 无需额外依赖
* 参见:[references/components-list.md#buttons](https://github.com/secondsky/claude-skills/blob/HEAD/plugins/inspira-ui/skills/inspira-ui/references/components-list.md#-buttons-5)
6. 特殊效果 → Confetti, Meteors, Neon Border, Glow Border
* 参见:[references/components-list.md#special-effects](https://github.com/secondsky/claude-skills/blob/HEAD/plugins/inspira-ui/skills/inspira-ui/references/components-list.md#-special-effects-12)
获取完整的实现细节(属性、完整代码、安装):获取 https://inspira-ui.com/docs/llms-full.txt - 专为 LLM 优化的文档,包含结构化的属性表格和可运行的代码示例。
<template>
<AuroraBackground>
<Motion
:initial="{ opacity: 0, y: 40, filter: 'blur(10px)' }"
:while-in-view="{ opacity: 1, y: 0, filter: 'blur(0px)' }"
:transition="{ delay: 0.3, duration: 0.8, ease: 'easeInOut' }"
class="relative flex flex-col items-center gap-4 px-4"
>
<div class="text-center text-3xl font-bold md:text-7xl">
Your amazing headline
</div>
<ShimmerButton>Get Started</ShimmerButton>
</Motion>
</AuroraBackground>
</template>
<script setup lang="ts">
import { Motion } from "motion-v";
import AuroraBackground from "~/components/ui/AuroraBackground.vue";
import ShimmerButton from "~/components/ui/ShimmerButton.vue";
</script>
<script setup lang="ts">
// 始终使用基于接口的属性定义
interface Props {
title: string;
count?: number;
variant?: "primary" | "secondary";
}
const props = withDefaults(defineProps<Props>(), {
count: 0,
variant: "primary",
});
</script>
<script setup lang="ts">
// 即使有 Nuxt 自动导入,也始终包含显式导入
import { ref, onMounted, computed } from "vue";
import { useWindowSize } from "@vueuse/core";
const { width } = useWindowSize();
</script>
<script setup lang="ts">
import { onUnmounted } from "vue";
let animationFrame: number;
let renderer: any;
onUnmounted(() => {
// 关键:清理 WebGL 资源以防止内存泄漏
if (animationFrame) cancelAnimationFrame(animationFrame);
if (renderer) renderer.dispose();
});
</script>
<template>
<ClientOnly>
<FluidCursor />
</ClientOnly>
</template>
原始的 Inspira UI 文档将 --destructive-foreground 设置为与 --destructive 相同的颜色,导致文字不可见。请使用修正后的值:
:root {
--destructive: oklch(0.577 0.245 27.325);
--destructive-foreground: oklch(0.985 0 0); /* 已修正 */
}
/* 必须在 main.css 中 */
@import "tailwindcss";
@import "tw-animate-css"; /* 经常被遗忘! */
// 错误:对象语法
const props = defineProps({ title: { type: String } });
// 正确:接口语法
interface Props { title: string; }
const props = defineProps<Props>();
<!-- 错误:在 SSR 期间会失败 -->
<GithubGlobe :markers="markers" />
<!-- 正确 -->
<ClientOnly>
<GithubGlobe :markers="markers" />
</ClientOnly>
as const// 错误:TypeScript 枚举
enum ButtonVariant { Primary = "primary" }
// 正确:as const 对象
const ButtonVariants = { Primary: "primary" } as const;
平均令牌节省:约 65%
预防的错误:13+ 个常见问题,包括:
@import "tw-animate-css"获取包含所有 CSS 变量的完整设置:references/SETUP.md
获取所有 120+ 组件及其依赖:references/components-list.md
获取常见问题排查:references/TROUBLESHOOTING.md
获取 TypeScript 模式和约定:references/CODE_PATTERNS.md
框架:Vue, Vue 3, Nuxt, Nuxt 4, Composition API, script setup
样式:TailwindCSS v4, OkLch, CSS 变量, 深色模式
动画:motion-v, GSAP, Three.js, WebGL, OGL, canvas
组件:aurora background, shimmer button, morphing text, 3D globe, fluid cursor, confetti, neon border, icon cloud, flip card, particles
用例:落地页, 英雄区域, 动画背景, 交互式 UI, 营销网站, 作品集, 3D 网站
解决的问题:Vue 动画, Nuxt 动画, 动画组件, 3D 效果, 粒子效果, 现代 UI 效果
生产状态:✅ 生产就绪 令牌效率:✅ 约 65% 节省 错误预防:✅ 预防 13+ 个常见问题 最后更新:2025-11-12
每周安装量
122
仓库
GitHub 星标数
90
首次出现
Jan 28, 2026
安全审计
安装于
gemini-cli103
claude-code102
cursor102
opencode99
codex95
github-copilot92
Inspira UI is a collection of 120+ reusable, animated components powered by TailwindCSS v4, motion-v, GSAP, and Three.js — crafted to help ship beautiful Vue and Nuxt applications faster.
Use Inspira UI when building:
Key Benefits :
# Required for all components
bun add -d clsx tailwind-merge class-variance-authority tw-animate-css
bun add @vueuse/core motion-v
# Optional: For 3D components (Globe, Cosmic Portal, etc.)
bun add three @types/three
# Optional: For WebGL components (Fluid Cursor, Neural Background, etc.)
bun add ogl
Create lib/utils.ts:
import { type ClassValue, clsx } from "clsx";
import { twMerge } from "tailwind-merge";
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs));
}
Add to your main.css. See references/SETUP.md for complete CSS configuration with OkLch colors.
./scripts/verify-setup.sh
Browse inspira-ui.com/components, copy what you need into components/ui/.
What type of effect do you need?
Background Effects → Aurora, Cosmic Portal, Particles, Neural Background
Text Animations → Morphing Text, Glitch, Hyper Text, Sparkles Text
3D Visualizations → Globe, 3D Carousel, Icon Cloud, World Map
bun add three @types/threeInteractive Cursors → Fluid Cursor, Tailed Cursor, Smooth Cursor
bun add ogl (for WebGL cursors)For complete implementation details (props, full code, installation): Fetch https://inspira-ui.com/docs/llms-full.txt - LLM-optimized documentation with structured props tables and working code examples.
<template>
<AuroraBackground>
<Motion
:initial="{ opacity: 0, y: 40, filter: 'blur(10px)' }"
:while-in-view="{ opacity: 1, y: 0, filter: 'blur(0px)' }"
:transition="{ delay: 0.3, duration: 0.8, ease: 'easeInOut' }"
class="relative flex flex-col items-center gap-4 px-4"
>
<div class="text-center text-3xl font-bold md:text-7xl">
Your amazing headline
</div>
<ShimmerButton>Get Started</ShimmerButton>
</Motion>
</AuroraBackground>
</template>
<script setup lang="ts">
import { Motion } from "motion-v";
import AuroraBackground from "~/components/ui/AuroraBackground.vue";
import ShimmerButton from "~/components/ui/ShimmerButton.vue";
</script>
<script setup lang="ts">
// ALWAYS use interface-based props
interface Props {
title: string;
count?: number;
variant?: "primary" | "secondary";
}
const props = withDefaults(defineProps<Props>(), {
count: 0,
variant: "primary",
});
</script>
<script setup lang="ts">
// ALWAYS include explicit imports even with Nuxt auto-imports
import { ref, onMounted, computed } from "vue";
import { useWindowSize } from "@vueuse/core";
const { width } = useWindowSize();
</script>
<script setup lang="ts">
import { onUnmounted } from "vue";
let animationFrame: number;
let renderer: any;
onUnmounted(() => {
// CRITICAL: Clean up WebGL resources to prevent memory leaks
if (animationFrame) cancelAnimationFrame(animationFrame);
if (renderer) renderer.dispose();
});
</script>
<template>
<ClientOnly>
<FluidCursor />
</ClientOnly>
</template>
The original Inspira UI docs have --destructive-foreground set to the same color as --destructive, making text invisible. Use the corrected value:
:root {
--destructive: oklch(0.577 0.245 27.325);
--destructive-foreground: oklch(0.985 0 0); /* CORRECTED */
}
/* REQUIRED in main.css */
@import "tailwindcss";
@import "tw-animate-css"; /* Often forgotten! */
// DON'T: Object syntax
const props = defineProps({ title: { type: String } });
// DO: Interface syntax
interface Props { title: string; }
const props = defineProps<Props>();
<!-- WRONG: Will fail during SSR -->
<GithubGlobe :markers="markers" />
<!-- CORRECT -->
<ClientOnly>
<GithubGlobe :markers="markers" />
</ClientOnly>
as const// DON'T: TypeScript enums
enum ButtonVariant { Primary = "primary" }
// DO: as const objects
const ButtonVariants = { Primary: "primary" } as const;
Average Token Savings : ~65%
Errors Prevented : 13+ common issues including:
@import "tw-animate-css"For complete setup with all CSS variables : references/SETUP.md
For all 120+ components with dependencies : references/components-list.md
For troubleshooting common issues : references/TROUBLESHOOTING.md
For TypeScript patterns and conventions : references/CODE_PATTERNS.md
Frameworks : Vue, Vue 3, Nuxt, Nuxt 4, Composition API, script setup
Styling : TailwindCSS v4, OkLch, CSS variables, dark mode
Animation : motion-v, GSAP, Three.js, WebGL, OGL, canvas
Components : aurora background, shimmer button, morphing text, 3D globe, fluid cursor, confetti, neon border, icon cloud, flip card, particles
Use Cases : landing pages, hero sections, animated backgrounds, interactive UI, marketing sites, portfolios, 3D websites
Problems Solved : Vue animations, Nuxt animations, animated components, 3D effects, particle effects, modern UI effects
Production Status : ✅ Production-Ready Token Efficiency : ✅ ~65% savings Error Prevention : ✅ 13+ common issues prevented Last Updated : 2025-11-12
Weekly Installs
122
Repository
GitHub Stars
90
First Seen
Jan 28, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
gemini-cli103
claude-code102
cursor102
opencode99
codex95
github-copilot92
shadcn UI组件库:36个Radix UI + Tailwind CSS预构建组件,无缝集成json-render
495 周安装
Animated Buttons → Shimmer, Ripple, Rainbow, Gradient
Special Effects → Confetti, Meteors, Neon Border, Glow Border