← ClaudeAtlas

motion-craftlisted

How things should move in a video-templates frame — easing, entrances, stagger, how long a thing stays on screen, and the four mistakes that pass every test and still look wrong. Use when writing or reviewing a template's CSS animation, when motion "feels off" but nothing is broken, or when picking a duration or delay. Read it before `new-template`, not after.
XuHo-IT/Content-Agent-Kit · ★ 2 · AI & Automation · score 66
Install: claude install-skill XuHo-IT/Content-Agent-Kit
# How things move here Every animation bug this repo has shipped passed the full test suite. Geometry is checkable; motion is not. So this is the vocabulary, and the four traps that have actually caught us. ## The four traps, in the order they bit Not hypotheticals. Each one reached a finished render before anyone noticed. ### 1. A delayed animation with no start state shows its ending first ```css .thing { animation: rise 0.5s ease 0.45s forwards; } /* wrong */ ``` `forwards` does nothing *during* the delay. The element renders with its normal style — which for a `forwards` animation is where it **finishes**. Half a second of the finished state, then a snap back to the start, then the animation. ```css .thing { opacity: 0; animation: rise 0.5s ease 0.45s forwards; } /* base IS the start */ .thing { animation: rise 0.5s ease 0.45s both; } /* or fill backwards */ ``` Use the base-rule form when the start state is the same in both aspects; use `both` when it is not. `frame-split-compare`'s divider enters from the right at 16:9 and from the bottom at 9:16, so its start state cannot live in the shared rule. ### 2. An animation travelling against the thing it reveals A divider sweeping in from the left while a `clip-path` uncovers from the right reads as **two animations that happen to finish together**. Whatever leads the reveal must travel the same way the reveal does. Ask: *what is the moving edge, and is my mover on it?* ### 3. A deco