Web & Frontendlow risk

emilkowalski-motion

Motion-design follow-up skill inspired by Emil Kowalski's animation guidance. Use after an interface exists to add tasteful micro-interactions, state transitions, and page motion with product-grade restraint.

nexu-io/open-design·skills/emilkowalski-motion/SKILL.md
62/ 100推薦值

匯入這個 Skill

選擇你的 coding agent,複製專案級或個人級安裝指令。

固定至平台收錄的 commit
匯入目前專案.agents/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a codex -y
匯入個人環境~/.agents/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a codex -g -y
手動放置目錄.agents/skills/emilkowalski-motionOfficial docs ↗
匯入目前專案.claude/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a claude-code -y
匯入個人環境~/.claude/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a claude-code -g -y
手動放置目錄.claude/skills/emilkowalski-motionOfficial docs ↗
匯入目前專案.agents/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a github-copilot -y
匯入個人環境~/.copilot/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a github-copilot -g -y
手動放置目錄.agents/skills/emilkowalski-motionOfficial docs ↗
匯入目前專案.agents/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a cursor -y
匯入個人環境~/.cursor/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a cursor -g -y
手動放置目錄.agents/skills/emilkowalski-motionOfficial docs ↗
匯入目前專案.agents/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a gemini-cli -y
匯入個人環境~/.gemini/skills/emilkowalski-motion
npx skills add https://github.com/nexu-io/open-design/tree/7533db3f4342d09b27368fa5d907ebd3cdb93b75/skills/emilkowalski-motion -a gemini-cli -g -y
Native Gemini CLIgemini skills install https://github.com/nexu-io/open-design.git --scope workspace --path skills/emilkowalski-motion
手動放置目錄.agents/skills/emilkowalski-motionOfficial docs ↗
⚠ 安裝指令使用開源 skills CLI。執行前請檢查來源、腳本與權限。
# Emil Kowalski Motion Follow-Up

Use this skill after a design artifact already exists. The goal is to make the interface feel alive without turning it into a motion demo.

## Workflow

1. Inspect the current HTML, component, or selected page element before adding animation.
2. Pick the smallest set of motion moments that clarify state or hierarchy:
   - entry reveal for the primary content
   - hover / active feedback for important controls
   - transition between UI states
   - scroll reveal only when it helps the story
3. Prefer `transform` and `opacity`. Avoid animating layout properties such as `top`, `left`, `width`, or `height`.
4. Use one motion language across the artifact. Do not mix unrelated easings, durations, or physics.
5. Add `prefers-reduced-motion` fallbacks for any automatic or scroll-linked motion.
6. Keep copy, data, and layout intent intact unless the user explicitly asks for a redesign.

## Motion Rules

- Default UI transitions should feel quick and useful: 140-220ms for most controls.
- Larger page reveals can be slower, but must not block reading.
- Avoid endless decorative loops unless they communicate status or progress.
- Do not add custom cursors, noisy particle effects, or motion that competes with content.
- Stagger only small groups. Long staggered lists make interfaces feel slow.

## Implementation Notes

- For plain HTML, CSS keyframes and small JavaScript observers are enough.
- For React or framework code, use the local stack already present in the repo.
- If GSAP is available and the motion needs sequencing, pair this with `gsap-core`, `gsap-timeline`, or `gsap-scrolltrigger`.
- Always clean up observers, timers, and animation instances.