Token导航 LogoToken导航TokenDH.com
开发需要联网github未标认证来源可访问许可证需确认审计通过

makepad-animation制作板动画

Agent Skill

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。它适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。使用时需要确认分辨率、时长、素材路径和导出格式;涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。

总安装

367

周安装

15

GitHub Stars

35,708

下载量

118
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:makepad-animation(制作板动画)
来源仓库:https://github.com/sickn33/antigravity-awesome-skills
仓库路径:skills/makepad-animation
安装命令:
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill makepad-animation
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill makepad-animation

简介

makepad-animation 用于辅助视频生成、动画合成和 Remotion 项目开发,适合组织镜头和生成素材说明。

  • 它支持脚本化剪辑、渲染问题排查,并能维护合成代码结构。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,适用于 Codex、Claude、Cursor、Gemini CLI 等宿主环境。
  • 使用时需确认分辨率、时长、素材路径和导出格式,避免资源丢失或格式不兼容。
  • 涉及外部素材或人物肖像时,应提前核对版权授权和内容审核要求。

SKILL.md

Makepad Animation Skill

Version: makepad-widgets (dev branch) | Last Updated: 2026-01-19 Check for updates: https://crates.io/crates/makepad-widgets

You are an expert at Makepad animations. Help users by:

  • Writing code: Generate animation code following the patterns below
  • Answering questions: Explain states, transitions, timelines

When to Use

  • You need to build or debug animations, transitions, hover states, or animator timelines in Makepad.
  • The task involves animator, state changes, easing, keyframes, or visual interaction feedback.
  • You want Makepad-specific animation patterns instead of generic Rust UI guidance.

Documentation

Refer to the local files for detailed documentation:

  • ./references/animation-system.md - Complete animation reference

Advanced Patterns

For production-ready animation patterns, see the _base/ directory:

PatternDescription
06-animator-basicsAnimator fundamentals
07-easing-functionsEasing and timing
08-keyframe-animationComplex keyframes

IMPORTANT: Documentation Completeness Check

Before answering questions, Claude MUST:

  1. Read the relevant reference file(s) listed above
  2. If file read fails or file is empty:

- Inform user: "本地文档不完整,建议运行 /sync-crate-skills makepad --force 更新文档" - Still answer based on SKILL.md patterns + built-in knowledge

  1. If reference file exists, incorporate its content into the answer

Key Patterns

1. Basic Hover Animation

<Button> {
    text: "Hover Me"

    animator: {
        hover = {
            default: off

            off = {
                from: { all: Forward { duration: 0.15 } }
                apply: {
                    draw_bg: { color: #333333 }
                }
            }

            on = {
                from: { all: Forward { duration: 0.15 } }
                apply: {
                    draw_bg: { color: #555555 }
                }
            }
        }
    }
}

2. Multi-State Animation

<View> {
    animator: {
        hover = {
            default: off
            off = {
                from: { all: Forward { duration: 0.2 } }
                apply: { draw_bg: { color: #222222 } }
            }
            on = {
                from: { all: Forward { duration: 0.2 } }
                apply: { draw_bg: { color: #444444 } }
            }
        }

        pressed = {
            default: off
            off = {
                from: { all: Forward { duration: 0.1 } }
                apply: { draw_bg: { scale: 1.0 } }
            }
            on = {
                from: { all: Forward { duration: 0.1 } }
                apply: { draw_bg: { scale: 0.95 } }
            }
        }
    }
}

3. Focus State Animation

<TextInput> {
    animator: {
        focus = {
            default: off

            off = {
                from: { all: Forward { duration: 0.2 } }
                apply: {
                    draw_bg: {
                        border_color: #444444
                        border_size: 1.0
                    }
                }
            }

            on = {
                from: { all: Forward { duration: 0.2 } }
                apply: {
                    draw_bg: {
                        border_color: #0066CC
                        border_size: 2.0
                    }
                }
            }
        }
    }
}

4. Disabled State

<Button> {
    animator: {
        disabled = {
            default: off

            off = {
                from: { all: Snap }
                apply: {
                    draw_bg: { color: #0066CC }
                    draw_text: { color: #FFFFFF }
                }
            }

            on = {
                from: { all: Snap }
                apply: {
                    draw_bg: { color: #333333 }
                    draw_text: { color: #666666 }
                }
            }
        }
    }
}

Animator Structure

PropertyDescription
animatorRoot animation container
{state} =State definition (hover, pressed, focus, disabled)
default:Initial state value
{value} =State value definition (on, off, custom)
from:Transition timeline
apply:Properties to animate

Timeline Types (Play Enum)

TypeDescription
Forward {duration: f64}Linear forward animation
SnapInstant change, no transition
Reverse {duration: f64, end: f64}Reverse animation
Loop {duration: f64, end: f64}Looping animation
BounceLoop {duration: f64, end: f64}Bounce loop animation

Easing Functions (Ease Enum)

// Basic
Linear

// Quadratic
InQuad, OutQuad, InOutQuad

// Cubic
InCubic, OutCubic, InOutCubic

// Quartic
InQuart, OutQuart, InOutQuart

// Quintic
InQuint, OutQuint, InOutQuint

// Sinusoidal
InSine, OutSine, InOutSine

// Exponential
InExp, OutExp, InOutExp

// Circular
InCirc, OutCirc, InOutCirc

// Elastic
InElastic, OutElastic, InOutElastic

// Back
InBack, OutBack, InOutBack

// Bounce
InBounce, OutBounce, InOutBounce

// Custom
ExpDecay { d1: f64, d2: f64 }
Bezier { cp0: f64, cp1: f64, cp2: f64, cp3: f64 }
Pow { begin: f64, end: f64 }

Using Easing

from: {
    all: Ease { duration: 0.3, ease: InOutQuad }
}

Common States

StateValuesTrigger
hoveron, offMouse enter/leave
pressed / downon, offMouse press/release
focuson, offFocus gain/lose
disabledon, offWidget enabled/disabled
selectedon, offSelection change

Animatable Properties

Most draw_* shader uniforms can be animated:

  • Colors: color, border_color, shadow_color
  • Sizes: border_size, border_radius, shadow_radius
  • Transforms: scale, rotation, offset
  • Opacity: opacity

When Writing Code

  1. Always set default: for initial state
  2. Use Forward for smooth transitions
  3. Use Snap for instant state changes (like disabled)
  4. Keep durations short (0.1-0.3s) for responsive feel
  5. Animate shader uniforms in draw_bg, draw_text, etc.

Rust API (AnimatorImpl Trait)

pub trait AnimatorImpl {
    // Animate to state
    fn animator_play(&mut self, cx: &mut Cx, state: &[LiveId; 2]);

    // Cut to state (no animation)
    fn animator_cut(&mut self, cx: &mut Cx, state: &[LiveId; 2]);

    // Check current state
    fn animator_in_state(&self, cx: &Cx, state: &[LiveId; 2]) -> bool;
}

// Usage example
fn handle_event(&mut self, cx: &mut Cx, event: &Event, scope: &mut Scope) {
    match event.hits(cx, self.area()) {
        Hit::FingerHoverIn(_) => {
            self.animator_play(cx, id!(hover.on));
        }
        Hit::FingerHoverOut(_) => {
            self.animator_play(cx, id!(hover.off));
        }
        Hit::FingerDown(_) => {
            self.animator_play(cx, id!(pressed.on));
        }
        Hit::FingerUp(_) => {
            self.animator_play(cx, id!(pressed.off));
        }
        _ => {}
    }
}

When Answering Questions

  1. States are independent - multiple can be active simultaneously
  2. Animation applies properties when state reaches that value
  3. from defines HOW to animate, apply defines WHAT to animate
  4. Makepad tweens between old and new values automatically
  5. Use id!(state.value) macro to reference animation states in Rust

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

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

平台分布

Codex

33.83%
按下载量换算40

Claude

33.09%
按下载量换算39

Cursor

20.15%
按下载量换算24

Gemini CLI

10.18%
按下载量换算12

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills