Agent Skills
› nexu-io/motion-anything
› like-burst
like-burst
GitHub为点赞、收藏等正向反馈按钮添加庆祝性粒子爆发微交互。仅限用户触发,每屏仅一次,支持减少动态偏好设置,确保性能与无障碍访问。
Trigger Scenarios
用户点击点赞或收藏按钮
需要给予正面反馈的微交互场景
Install
npx skills add nexu-io/motion-anything --skill like-burst -g -y
SKILL.md
Frontmatter
{
"od": {
"mode": "prototype",
"preview": {
"type": "html"
},
"surface": "web",
"category": "animation-motion",
"platform": "desktop",
"upstream": null,
"design_system": {
"requires": false
},
"example_prompt": "Use the like-burst recipe on the heart button in this page: pop the icon on toggle and\nemit a short particle burst on like only, with a prefers-reduced-motion fallback. Keep it\nto one celebratory moment on screen."
},
"name": "like-burst",
"triggers": [
"like animation",
"reaction effect",
"celebration burst",
"delightful like",
"点赞特效",
"惊喜感"
],
"description": "Add a celebratory particle burst to a like \/ favorite \/ reaction button. A delight\nmicro-interaction that fires on user tap only (never on load), bursts on the \"like\"\ntransition (not un-like), and ships a prefers-reduced-motion fallback. Use when a small,\nearned moment of positive feedback will feel good — and only one such moment per screen.\n"
}
like-burst
A celebratory particle burst for like / favorite / reaction buttons. Part of
motion-anything; obeys MOTION-SPEC.md.
When to use it
- Like / favorite / upvote / reaction buttons.
- A small, earned moment of positive feedback.
When NOT to use it (restraint)
- Destructive or neutral actions (delete, dismiss, close).
- When more than one burst could fire at once — one celebratory moment per screen.
- On load / autoplay. This must be user-triggered.
How to apply
- Copy
like-burst.cssandlike-burst.jsinto the project. - Link them, and mark the button:
<link rel="stylesheet" href="like-burst.css" /> <button class="like-btn" data-like-burst aria-pressed="false" aria-label="Like">♥</button> <script src="like-burst.js"></script> - It auto-attaches to any
[data-like-burst], or callattachLikeBurst(el)manually.
Tuning
PARTICLE_COUNT/COLORSinlike-burst.js(keep particle count modest — taste over spectacle).- Pop feel: the
lb-popkeyframe (currently420ms, ease-out). Burst spread:distinspawnParticles.
Accessibility & performance
- Honors
prefers-reduced-motion: particles are suppressed, a quiet color/scale cue remains. - Animates
transform/opacityonly; removes injected particle nodes after ~700ms.
Framework notes
- React: call
attachLikeBurst(ref.current)inuseEffect; or port the click handler into your component and keep the CSS as-is.
Version History
- b016900 Current 2026-07-11 17:09


