animate-text について
animate-textは、JSON契約を備えたテキストアニメーションのカタログスキルです。アニメーションを実装する開発者向けに、汎用的なモーション仕様と正確な描画動作を分けて定義し、効果の選定、変換、再現を支援します。
主な機能
- 0124種類のモーション仕様を参照
- 02名前やメタデータから効果を検索
- 03汎用モーション契約を変換
- 04正確なアニメーションレシピを再現
- 05WAAPI、Motion、GSAPのアダプター情報を参照
活用シーン
- 01見出しやカウンターの効果を選定
- 02モーションパターンを対象スタックに変換
- 03異なるレンダラーで効果を再現
- 04正確な再生とタイミングで効果を再現
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ pixel-point/ animate-text --skill animate-textインストール後、Claude Code で/animate-textを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/catalog.jsonlibrary-adapters.jsonrenderer-recipes.jsonruntime-presets.jsonsamples.jsonassets/effects/blur-out-up.jsonbottom-up-letters.jsondepth-parallax-words.jsonfade-through.jsonfocus-blur-resolve.jsonkinetic-center-build.jsonline-by-line-slide.jsonmask-reveal-up.jsonmicro-scale-fade.jsonper-character-rise.jsonper-word-crossfade.jsonscale-down-fade.jsonshared-axis-x.jsonshared-axis-y.jsonshared-axis-z.jsonshimmer-sweep.jsonshort-slide-down.jsonshort-slide-right.jsonsoft-blur-in.jsonspring-scale-in.jsonstagger-from-center.jsonstagger-from-edges.jsontop-down-letters.jsontypewriter.jsonassets/specs/blur-out-up.json詳細
テキストアニメーション
生成された JSON コントラクトを備えたテキストアニメーションカタログとして、このスキルを使用します。
移植可能なモーションコントラクトには assets/specs/<id>.json を使用します。コンテンツ、レンダラーのアルゴリズム、再生、ランタイム、ホスト要件、レンダリングコントラクト、ライブラリアダプターを含むアニメーションを正確に再現するには、assets/effects/<id>.json を使用します。
このスキルには、合計 24 個の仕様が含まれています。ウェブサイトでは現在、そのうち 20 個を紹介しています。
使用する場面
次のようなリクエストには、このスキルを使用します。
- 見出し、ラベル、カウンター、エディトリアルコピー、またはテキストの切り替えをアニメーション化する
soft-blur-in、typewriter、shared-axis-y、kinetic-center-buildなど、名前付きのエフェクト ID を再現する- 厳選されたカタログからモーションパターンを選び、対象のスタックに合わせて変換する
- サンプルコンポーネントに頼らず、別のスタックで現在のアニメーション動作を再現する
- WAAPI、Motion / motion.dev、GSAP、CSS、Lottie、Rive、または別のレンダラーを使って同じ仕様を実装する
ワークフロー
- ユーザーが次のどちらを求めているかを判断します。
- 表示されているエフェクトの、サイト上での正確なバージョン
- モーションコントラクトの移植可能な変換
- ユーザーがエフェクト ID を指定した場合は、
assets/specs/<id>.jsonを読み込むか、node scripts/get-spec.mjs <id>を実行します。 - それ以外の場合は、
references/catalog.mdを使用するか、必要に応じて次を実行します。node scripts/list-specs.mjsnode scripts/find-spec.mjs "<query>"
- ユーザーがモーションの意図を移植可能な形で変換することを求めている場合は、
assets/specs/<id>.jsonを使用します。 - ユーザーが生成されたアニメーション動作の正確な再現を求めている場合は、
assets/effects/<id>.jsonまたはnode scripts/get-effect.mjs <id>を使用します。 - ユーザーが対象のアニメーションライブラリを指定した場合は、その指定を必ず守ります。
showcase.library_selectionに従い、そのエフェクトに対応するshowcase.library_adapters.<library>ブロックのみを使用します。 - 正確に再現する場合は、移植可能な仕様だけから推測せず、
showcase.renderer、showcase.playback、showcase.timing、showcase.runtime、showcase.stage、showcase.rendering_contract、showcase.library_selection、showcase.library_adaptersに従います。 showcase.stageはアニメーションのホスト要件としてのみ扱います。ユーザーが明示的にその UI を求めていない限り、元のウェブサイトのタイポグラフィ、色、パディング、カードの装飾、ページレイアウトをコピーしないでください。- 既存のセクションにエフェクトを適用する場合、そのセクションのテキストを維持します。ユーザーがショーケースの文面を再現するよう明示的に求めていない限り、
showcase.contentはデモ用またはフォールバック用の文面としてのみ使用します。
同梱リソース
references/catalog.md:同梱された仕様ライブラリの簡潔な概要references/schema.md:移植可能な仕様と正確なショーケース用エフェクトレシピのフィールド単位のスキーマreferences/selection-guide.md:適切なエフェクトファミリーを選ぶためのヒューリスティックreferences/implementation-notes.md:一般的なアニメーションスタック向けの変換メモassets/specs/*.json:移植可能なモーションコントラクトassets/effects/*.json:生成されたアニメーションの正確なレシピassets/catalog.json:ウェブサイトに表示されるカタログの順序とレンダラーのオーバーライドassets/samples.json:生成されたサンプルで使用される文面assets/runtime-presets.json:ランタイムの倍率とループのタイミングプリセットassets/stage-presets.json:アニメーションのホスト要件。プレゼンテーションのスタイル指定ではありませんassets/renderer-recipes.json:共有レンダラーアルゴリズムassets/library-adapters.json:WAAPI、Motion、GSAP の実装マッピングに関するガイダンス
任意のヘルパースクリプト
ヘルパースクリプトは、決定論的なショートカットとして任意で使用できます。実行には Node.js 20+ が必要です。
node scripts/list-specs.mjsは、同梱された仕様のメタデータを JSON として出力しますnode scripts/get-spec.mjs <id>は、移植可能なモーション仕様を 1 つ JSON として出力しますnode scripts/get-effect.mjs <id>は、生成されたアニメーションの正確なレシピを 1 つ JSON として出力しますnode scripts/find-spec.mjs "<query>"は、メタデータに基づいて候補をランク付けして返します
Node が利用できない場合でも、Markdown のリファレンスと JSON アセットだけで、このスキルの主要な機能を利用できます。
翻訳ルール
targetはそのまま保持してください:whole、per-character、per-word、またはper-line。enterとexitの duration、easing、stagger は、対象スタックに合わせてそのままマッピングしてください。- 対象スタックがサポートしている場合は、transform、opacity、blur、scale、rotation、spacing の各フィールドを保持してください。
kinetic-center-buildやshort-slide-downなどのレイアウトを考慮したエフェクトには、汎用的な stagger に置き換えず、エフェクトの正確なレシピを使用してください。- アニメーションを正確に再現するには、
assets/effects/<id>.jsonのshowcase.renderer、showcase.playback、showcase.timing、showcase.runtime、showcase.stage、showcase.rendering_contract、showcase.library_adaptersの各フィールドを保持してください。 - 指定されたアニメーションライブラリを別のものに置き換えないでください。ユーザーが GSAP を求めた場合は、GSAP をインポートして使用してください。Motion を求めた場合は、Motion をインポートして使用してください。WAAPI を求めた場合は、
Element.animateを使用してください。 - Motion または GSAP を対象とする場合は、インポート、時間単位の変換、easing の変換、キーフレームの形式、完了処理、レンダラー固有の注意事項について、対応する
showcase.library_adapters.motionまたはshowcase.library_adapters.gsapブロックを使用してください。 showcase.engine_notesとshowcase.reproduction_notesを注意深く確認してください。これらには、視覚的な一致に必要なスタック固有の詳細が記載されています。- サイトの挙動を正確に再現するには、
showcase.playbackのループ全体を実装してください。ユーザーがワンショットの表示アニメーションを明示的に求めている場合を除き、最初の enter アニメーションだけで終わらせないでください。 - レンダラーレシピでフェーズの完了を待つよう指定されている場合は、アニメーション/トゥイーンの Promise を await するか、算出されたフェーズの合計時間だけ sleep してください。両方は行わないでください。
注意事項
- 公開ウェブサイトでは、バンドルされたライブラリの厳選されたサブセットを使用しています。このスキルでは、現在ウェブサイトに表示されていない追加のバンドル済み仕様も引き続き使用できます。
assets/specs/*.jsonは、移植可能なモーション契約の正式な情報源です。assets/effects/*.jsonは、アニメーションを正確に再現するための契約の正式な情報源です。- 非表示のエフェクトでは、正確なエフェクトレシピの
"showcase": nullとなっています。 - 説明文の注記が JSON フィールドと矛盾する場合は、JSON を優先してください。
コメント
Markdown 対応