creator-plugins-ui について
LottieFiles Creator プラグインの UI を開発する人向けのコンポーネントライブラリです。アクセシブルな部品とテーマ用ユーティリティを備え、付属クラスの利用に Tailwind の設定は必要ありません。
主な機能
- 01アクセシブルな UI コンポーネント 25 種
- 02テーマカラー用ユーティリティクラス
- 03ダークモードと実行時のテーマ変更
- 04Tailwind 対応の cn() ユーティリティ
- 05セットアップと移行のガイド
活用シーン
- 01Creator プラグインの UI 構築
- 02プラグイン UI へのテーマ付きコントロール追加
- 03カスタムまたは Radix コンポーネントの移行
- 04UI へのダークモード適用
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ lottiefiles/ creator-plugin-skills --skill creator-plugins-uiインストール後、Claude Code で/creator-plugins-uiを入力して読み込まれたか確認します。
同梱ファイルreferences/setup-guide.mdreferences/theming-guide.md
詳細
Creator Plugins UI Library
@lottiefiles/creator-plugins-ui — Base UI + Tailwind CSS + CVA で構築された、アクセシビリティに配慮した 25 個のコンポーネントです。プラグインの UI コード(src/)でのみ使用し、プラグインのサンドボックスでは使用しません。
クイックセットアップ
完全なガイド:references/setup-guide.md
npm install @lottiefiles/creator-plugins-ui
// src/main.tsx — import before local styles
import "@lottiefiles/creator-plugins-ui/styles.css";
コンポーネントとテーマカラーのユーティリティクラス(bg-primary、text-foreground、border-border など)は、styles.css だけで使用できます。Tailwind の設定は不要です。
ライブラリが提供するものに加えて、追加のカスタム Tailwind クラスが必要な場合は、Tailwind v4 をセットアップしてください。
npm install --save-dev tailwindcss @tailwindcss/vite
vite.config.ts のプラグインに tailwindcss() を追加し、@import "tailwindcss" を含む src/styles.css を作成して、カスタムカラーには @theme {} を使用します。tailwind.config.js や postcss.config.js(v3 のパターン)は作成しないでください。詳しい手順は references/setup-guide.md を参照してください。
インポートパターン
import { Button, Input, Select, Slider, cn } from "@lottiefiles/creator-plugins-ui";
利用可能なコンポーネント
プロパティ、バリアント、API の詳細については、インストールしたパッケージの TypeScript 型を参照してください。型には JSDoc コメント、明示的なユニオン型、デフォルト値が含まれています。
node_modules/@lottiefiles/creator-plugins-ui/dist/components/*/
コンポーネント: Button、Input、Label、Select、Slider、NumberInput、DualNumberInput、Checkbox、Toggle、RadioGroup、Tabs、Dialog、Dropdown、Tooltip、SegmentedControl、SearchBar、Toast、Spinner、Separator、Card、Grid、EmptyState、Badge、AIPromptInput、ThemeProvider
複合コンポーネント(サブコンポーネントを組み合わせて使用):Dialog、Select、Dropdown、Tabs、Card、Tooltip、Toast、RadioGroup
複合コンポーネントのパターン
複合コンポーネント(Dialog、Select、Dropdown、Tabs)は、サブコンポーネントを組み合わせて使用します。ポリモーフィックなレンダリングには render プロパティを使用します(asChild ではありません。このライブラリは Radix ではなく Base UI を使用しています)。
<DialogRoot>
<DialogTrigger render={<Button variant="outline" />}>Delete</DialogTrigger>
<DialogContent>
<DialogHeader>
<DialogTitle>Delete Layer?</DialogTitle>
<DialogDescription>This cannot be undone.</DialogDescription>
</DialogHeader>
<DialogFooter>
<DialogClose render={<Button variant="outline" />}>Cancel</DialogClose>
<Button variant="destructive" onClick={handleDelete}>Delete</Button>
</DialogFooter>
</DialogContent>
</DialogRoot>
テーマ設定
完全なガイド:references/theming-guide.md
ダークモード:<html> に class="dark" を追加します。document.documentElement.classList.add("dark")。
ThemeProvider を使った実行時の上書き:
<ThemeProvider tokens={{ "--primary": "hsl(260 80% 55%)" }} themeName="custom">
<App />
</ThemeProvider>
主な CSS 変数:--background、--foreground、--primary、--secondary、--destructive、--muted-foreground、--border、--ring。
cn() ユーティリティ
ライブラリの cn() を使用してください(ローカルの clsx ではありません)。テーマカラーとフォントサイズ用のカスタム Tailwind マージ設定が含まれています。
import { cn } from "@lottiefiles/creator-plugins-ui";
<div className={cn("p-4 text-foreground", isActive && "bg-primary")} />
よくある落とし穴
styles.cssのインポート漏れ — コンポーネントにスタイルが適用されません。エントリーファイルで@lottiefiles/creator-plugins-ui/styles.cssを一度インポートしてください。- v4 での Tailwind v3 設定の使用 —
tailwind.config.jsやpostcss.config.jsは作成しないでください。Tailwind v4 では、CSS 内の@import "tailwindcss"と@theme {}、および Vite との統合に@tailwindcss/viteを使用します。 renderではなくasChildを使用 — Base UI では Radix のasChild+Slotではなく、render={<a href="/" />}を使用します。- Select の空文字列の値 —
""は「選択なし」を表す予約値です。"none"などを使用してください。 - NumberInput は制御コンポーネントのみ —
valueとonChangeが必要です。非制御モードはありません。 - Slider の値は常に配列 —
50ではなく[50]を渡してください。コールバックも配列を返します。 - Toast にはプロバイダーが必要 —
<ToastProvider>の外でuseToast()を呼び出すとエラーになります。アプリのルートをラップしてください。 - ダークモードのクラスを設定する場所 —
darkクラスはコンポーネントではなく、<html>または親要素に設定します。 cnのインポート先が誤っている — ローカルのclsxではなく、@lottiefiles/creator-plugins-uiからcnを使用してください。
カスタムコンポーネントからの移行
変更前と変更後の完全な例:references/setup-guide.md
@stitches/reactのスタイル付きコンポーネントを、ライブラリのコンポーネントと Tailwind クラスに置き換えます@radix-ui/*のインポートをライブラリのコンポーネントに置き換えますasChildをrenderプロパティに置き換えますdata-[state=checked]→data-[checked]、data-[state=open]→data-[open]などに置き換えます- インラインカラーを CSS 変数クラス(
text-foreground、bg-primary)に置き換えます - カスタムの
cn()/clsx()をライブラリのcn()に置き換えます
リファレンスガイド
| リファレンス | 内容 |
|---|---|
references/setup-guide.md | インストール、Tailwind の設定、Stitches/Radix からの移行、トラブルシューティング |
references/theming-guide.md | CSS 変数、ダークモード、ThemeProvider、カスタムカラー |